添加表单使用了数据模型xxModel没有的字段,需要新建表单模型xxForm,这个时候,在控制器接受到了数据,子表单模型使用表单接受到的数据进行拼接,如:$this->product
<?php namespace frontend\controllers; use Yii; class IndexController extends \yii\web\Controller {
<?php namespace frontend\controllers; use Yii; use frontend\models\LoginForm; class IndexController
随机小技巧 当表单提交操作时,如出现“Unable to verfy your data submission”错误,是被Yii2框架的CSRF验证拦截了。
'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 {
-- 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
Yii2底层分析 我是从入口处分析的。 表面看起来没有太多的意义,实则不然,yii2的大部分组件都是以Object为基类的, 所以init函数很重要,控制器、模型、模块module,自定义组件等都可以去实现init方法。
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
活动记录能智能检测数据库对象的集合(例如列名、列类型、约束)而不需要手动地描述它们。活动记录是通过执行额外的SQL查询来获得该信息。通过启用 Schema 缓存,检索到的数据库对象的集合将被保存在缓存中并在将来的请求中重用。
准备一张表: -- 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";
原文链接:https://blog.csdn.net/lilongsy/article/details/84620377
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
sql: CREATE TABLE `country` ( `code` CHAR(2) NOT NULL PRIMARY KEY, `name` CHAR(52) NOT NULL, `population` INT(11) NOT NULL DEFAULT '0' ) ENGINE=InnoDB DEFAULT CHARSET=utf8; INSERT INTO `country` VALUES ('AU','Australia',18886000); INSERT INTO `count
'allowedIPs' => ['1.2.3.4', '127.0.0.1', '::1']//远程时需要添加ip段
public function behaviors() { $behaviors = [ 'corsFilter' => [ 'class' => Cors::className(), 'cors' => [ 'Origin' => [],//跨域的域名数组 'Access-Control-Request-Me