我正在使用Yii2并尝试初始化一些迁移文件。几个月前这是有效的,现在我收到以下错误'yii'isnotrecognizedasaninternalorexternalcommandcommandI'mtryingtorunis'yiimigrate/createinit_my_table我一直在四处寻找,但不确定问题出在哪里。看起来这应该是一个非常通用且易于修复的错误... 最佳答案 在我深入提出解决方案之前,请检查您是否安装了Yii的基本模板或高级模板。$phpyiiserve将适用于“基本”模板。确保在终端,你已经切换到“bas
我想在yii2的Cms页面中为url设置动态路由。当我添加CMS页面时,我将添加页面别名aboutus、faq、management等,这些别名将保存在db中。当我给URL规则静态时它会起作用,[检查下面的代码]'urlManager'=>['showScriptName'=>false,'enablePrettyUrl'=>true,//'enableStrictParsing'=>true,'rules'=>array('aboutus'=>'cms/index/1','faq'=>'cms/index/2','termacondition'=>'cms/index/3','man
我有几个子域,如“a.domain.com”、“b.domain.com”,但我发现如果我在子域a登录,session/cookies在b中将不起作用,我必须重新登录在“b.domain.com”中如何让登录session在所有子域中工作?更新:我发现每个子域都有不同的sessionID...更新:我发现我只能登录'bench'和'post'等几个域,但是不能登录'book'和其他域。真奇怪。 最佳答案 你可以像我一样在yiiconfig/main.php文件中设置它。(我不确定您是否还需要更改php.ini文件,但我会说“不”,因
我是新手Yii开发人员,我有带有访问规则的AdminController。所以这个Controller只为特定用户启用,否则它会重定向到"example.com/site/login"但我需要它重定向到"example.com/user/login"。那你能告诉我怎么做吗? 最佳答案 您可以更改用户组件的loginUrl属性,因此在您的main.php配置文件中进行以下更改:array(//......'components'=>array('user'=>array('loginUrl'=>array('user/login'),
我正在尝试更改我的GridView列宽。这是我的代码:widget('zii.widgets.grid.CGridView',array('id'=>'prefixs-grid','dataProvider'=>$model->search(),'filter'=>$model,'columns'=>array(array('name'=>'id','header'=>'No.','htmlOptions'=>array('class'=>'center'),),array('name'=>'pfx','htmlOptions'=>array('width'=>30),),array(
我在两个模型(照片、相册)中有这些关系。在项目模型中:'photo'=>array(self::HAS_MANY,'photo','album_id')在照片模型中:'album'=>array(self::BELONGS_TO,'Album','album_id'),并且在actionDelete的albumController中:$this->loadModel($id)->photo->delete();但是没有任何反应,相册也没有被删除。问题是什么? 最佳答案 相册里有很多你的关系照片,你应该循环删除它们$photos=$t
我正在尝试使用关系作为标准的一部分来创建CActiveDataProvider。我有以下内容:用户模型:returnarray('favourites'=>array(self::HAS_MANY,'UserFavourite','user_id','order'=>'added_atDESC'),);用户最喜欢的模型:returnarray('user'=>array(self::BELONGS_TO,'User','user_id'),'listing'=>array(self::BELONGS_TO,'Listing','listing_id'),);Controller(查看收
我是yii2和php网络应用程序开发的新手。我正在使用dep-drop来选择输入取决于parent的选择。现在我在yii2调试器中收到一条错误消息,exception'yii\base\ErrorException'withmessage'Class'app\controllers\Response'notfound'inG:\xampp\htdocs\project\controllers\SalesOrderController.php:129Stacktrace:#0[internalfunction]:yii\base\ErrorHandler->handleFatalErro
我知道您可以使用inlinevalidator验证单个属性比如:['country','validateCountry']publicfunctionvalidateCountry($attribute,$params){if(!in_array($this->$attribute,['USA','Web'])){$this->addError($attribute,'Thecountrymustbeeither"USA"or"Web".');}}但是我该如何将多个属性传递给验证器呢?...还是应该在验证器中通过$this引用它们? 最佳答案
我的网站有一个根域和几个子域,每个子域都有一个单独的yii2模块。目前我必须单独登录每个子域。我希望能够登录到根目录,然后自动登录到每个子域。网上有几页关于实现此目的的信息,但没有任何效果。目前我在两个main.php配置文件中都有相同的设置(即根域和我正在测试的子域之一)'components'=>['request'=>['enableCookieValidation'=>true,'enableCsrfValidation'=>true,'cookieValidationKey'=>'XXXXXXX',],'user'=>['class'=>'yii\web\User','ide