添加表单使用了数据模型xxModel没有的字段,需要新建表单模型xxForm,这个时候,在控制器接受到了数据,子表单模型使用表单接受到的数据进行拼接,如:$this->product
随机小技巧 当表单提交操作时,如出现“Unable to verfy your data submission”错误,是被Yii2框架的CSRF验证拦截了。
<?php namespace frontend\controllers; use Yii; class IndexController extends \yii\web\Controller {
<?php namespace frontend\controllers; use Yii; use frontend\models\LoginForm; class IndexController
-- phpMyAdmin SQL Dump -- version 4.5.1 -- http://www.phpmyadmin.net -- -- Host: 127.0.0.1 -- Generation Time: 2022-02-28 10:09:39 -- 服务器版本: 10.1.13-MariaDB -- PHP Version: 5.6.21 SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; SET time_zone = "+00:00"; /*!4010
Expression('count(*) as count , count(distinct mobile) as mnumber') ])->asArray() ->all(); Yii2
'authManager' =>[ 'class'=>\yii\rbac\DbManager::className() ] composer selfupdate composer update yiisoft/yii2-composer --no-plugins yii migrate --migrationPath=@yii/rbac/migrations -- phpMyAdmin SQL Dump -- version 4.5.1 -- http://ww
yii的默认方法是index,可以在vender/yiisoft/yii2/base/Controller.php 中进行初始设置,也可以在控制器中改写defaltAction='action'。 5.布局模式 yii会默认开启布局模式,其布局模板为view中的layout中的main.php,我们可以在veder/yiisoft/yii2/web/controller.php基础类中public 11.自定义函数 yii里面自定义函数可以在vendor/yiisoft/yii2/helpers/文件夹里,新建一个XXX.php文件,然后定义一个自定义类,再定义静态方法YYY()。 13.使用ActiveForm创建表单 yii2中使用小部件创建view视图的步骤: 设置一个Model设置其属性 public $username; public $password; 设置其rule
到前台或者后台对应的conf.php文件进行配置allowedIPs,数组形式放允许gii访问
<?php namespace frontend\controllers; use Yii; class IndexController extends \yii\web\Controller {
sql: CREATE TABLE `user` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `username` varchar(50) NOT NULL, `password` varchar(32) NOT NULL, `authKey` varchar(100) NOT NULL DEFAULT '', `accessToken` varchar(100) NOT NULL DEFAULT '', PRIMARY KEY
-- phpMyAdmin SQL Dump -- version 4.5.1 -- http://www.phpmyadmin.net -- -- Host: 127.0.0.1 -- Generation Time: 2022-02-28 10:09:39 -- 服务器版本: 10.1.13-MariaDB -- PHP Version: 5.6.21 SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; SET time_zone = "+00:00"; /*!4010
Yii2底层分析 我是从入口处分析的。 表面看起来没有太多的意义,实则不然,yii2的大部分组件都是以Object为基类的, 所以init函数很重要,控制器、模型、模块module,自定义组件等都可以去实现init方法。
// 发送短信(加入短信队列并记录短信记录) // todo 下方队列代码需要改进,应该增加一个专门的队列扩展,这里为了快速实现,先直接用redis的操作写在这里。 /** @var Connection $redis */ $redis = \Yii::$app->get('redis'); if($redis) { $redis->executeCommand('lpush', ['order_sms', Json::encode([ 'sms_id' => $this->act
这篇文章主要来看看在Yii2之中的MVC,当然,最核心的思想还是跟Yii1.1一样的,但是我今天是想来看看在Yii2里的MVC跟Yii1.1有什么不同,或者应该直接说,Yii2的改进在哪里,以至于使得官方敢向着最好的 Yii2的Active Record。 没错,Yii2中已充分开始使用PHP命名空间,当初在Yii1.1的时候一直听说Yii2会使用更高级的PHP特性来完全重写,果然啊,点个赞。 写在最后 正如你在这篇文章看到的一样,在Yii2中几乎所有的MVC组件变化都使得Yii2更好用了,我相信这会带给开发者更好的的开发体验,毕竟Yii2 中看到了一丝丝优雅的样子! 所以,各位还在苦恼应该上手哪个PHP框架的同学们,请不要犹豫,Yii2就是一个极好的选择。
最近在使用场景的时候碰到一些不解的问题,我简单模拟下: 我新建一张表info,有name和age2个字段 模型代码:
WEB根目录 ,例如WWW目录下 composer create-project --prefer-dist --stability=dev yiisoft/yii2-app-advanced yii2 或者composer create-project yiisoft/yii2-app-advanced yii2 2.0.12 会在当前目录生成一个yii2目录,这个就是 Yii2的advanced 版本的项目 记录二: 通过归档文件进行安装 我们先以简单地方式安装Yii2,所谓的简单方式,其实更好的说应该是更容易安装成功的方式,那就是通过归档文件进行安装! fxp/composer-asset-plugin:^1.3.1" 安装最新的advanced版本:composer create-project yiisoft/yii2-app-advanced yii2
准备一张表: -- phpMyAdmin SQL Dump -- version 4.5.1 -- http://www.phpmyadmin.net -- -- Host: 127.0.0.1 -- Generation Time: 2022-02-27 13:17:38 -- 服务器版本: 10.1.13-MariaDB -- PHP Version: 5.6.21 SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; SET time_zone = "+00:00";
活动记录能智能检测数据库对象的集合(例如列名、列类型、约束)而不需要手动地描述它们。活动记录是通过执行额外的SQL查询来获得该信息。通过启用 Schema 缓存,检索到的数据库对象的集合将被保存在缓存中并在将来的请求中重用。
原文链接:https://blog.csdn.net/lilongsy/article/details/84620377