我在我的应用程序中使用了多个场景,但遇到的问题是每次最后一个场景都会覆盖第一个场景。型号:publicfunctionrules(){returnarray([...]array('cost_spares','cost_spare_func','match','pattern'=>'/^[a-zA-Z]+$/','message'=>'Donotenterzeroor/andcharactersforSpareparts!','on'=>'cost_spare_func'),array('cost_labour','cost_labour_func','match','pattern'
使用Yii2中的迁移功能,我试图在表'users'上添加一个名为'authorization_key'的新列。我的up-函数如下:我最初的run函数是这样的publicfunctionup(){$this->createTable('users',['id'=>'pk','username'=>'stringUNIQUE','password'=>'string']);}当我运行./yiimigrateup在./yiimigrate/create之后,表被创建了。但是在添加$this->addColumn('user','authorization_key'for','stringUN
我的rules方法中有一堆验证规则,所有错误似乎都有效,但这个有问题:['username','match','pattern'=>'/[a-zA-Z0-9_-]+/','message'=>'Yourusernamecanonlycontainalphanumericcharacters,underscoresanddashes.'],它验证,这是不正确的行为。我是不是做错了什么? 最佳答案 这个模式只检查第一个字符。您需要像下面这样更正它:['username','match','pattern'=>'/^[a-zA-Z0-9_
在我的Controller中有以下几行$request=Yii::$app->request;print_r($request->post());echo"version_nois".$request->post('version_no',-1);输出如下Array([_csrf]=>WnB6REZ6cTAQHD0gAkoQaSsXVxB1Kh5CbAYPDS0wOGodSRANKBImVw==[CreateCourseModel]=>Array([course_name]=>test[course_description]=>kjhjk[course_featured_image]=
我是Yii2的新手,我需要在一些操作发生后手动记录到数据库。对我来说最好的事情是按类别过滤。问题是Yii2总是添加带有信息$_COOKIE、$_SESSION和$_SERVER的额外行。这是正常的吗?如何禁用额外的日志行?这是前端配置return['id'=>'app-frontend','basePath'=>dirname(__DIR__),'bootstrap'=>['log'],'controllerNamespace'=>'frontend\controllers','components'=>['user'=>['identityClass'=>'common\models
我正在搜索Yii2的密码强度计。我找到了thisarticle对于Yii1。我看到那里提到了protected目录。我找不到这个文件夹。它在基本应用程序模板或高级应用程序模板中可用吗? 最佳答案 Yii2中没有protected目录(基本应用模板和高级应用模板都没有)。将自定义验证器放在哪里-由您决定。我建议使用components/validators文件夹。这里是thepart涵盖Yii2自定义验证的官方指南。另请查看thisextension,也许它已经涵盖了您的需求,因此您不必重新发明轮子。
我想在不指定任何条件的情况下计算表中的所有记录:现在,我是这样做的$result['cms']=Cms::find()->where([])->count();它会给我结果,但我不想使用where子句。那么如何在没有where子句的情况下统计所有记录。谢谢 最佳答案 你可以看到这个文档http://www.yiiframework.com/doc-2.0/yii-db-activequery.html简单地使用count():返回COUNT查询的结果。Cms::find()->count();all():返回一个行数组,每一行都是名
我已经按照下面的链接尝试在Yii中删除多行,但到目前为止我使用的函数说Yii找不到它,请参见下面的屏幕截图。这是我在StackOverflow中遵循的指南。DeletemultiplerowsinYII2这是我正在处理的代码。$keyfordeletion=ActiveSubject::find($clientid);$keyfordeletion->CreateCommand()->deleteAll('subjectcontainer','clientid='.$clientid)->execute();这里发生的事情是keyfordeletion将在activesubject事件
我卡住了。我正在尝试从命令shell运行一些功能。我正在使用基本项目中的HelloController。当我运行phpyiihello它运行良好并且索引函数正在运行但是如果我尝试运行不同的函数如phpyiihello/create我会收到这个错误-Error:Unknowncommand.我向这个Controller添加了创建函数。奇怪的是,当我运行phpyii时,我看到了创建命令。我的Controller代码namespaceapp\commands;useyii\console\Controller;useYii;classHelloControllerextendsControl
我已经完成了http://www.yiiframework.com/doc/guide/1.1/en/form.table我不明白这是什么意思:$items=$this->getItemsToUpdate();$this->getItemsToUpdate()函数是什么?我试图一次插入动态行。我使用jquery创建数据,但我不知道如何将它们插入数据库。 最佳答案 Yii支持添加多条记录。用这个....$alertStatus[]=array('db_field_name1'=>$value1,'db_field_name1'=>$v