03 2018 档案
YII2中查询生成器Query()的使用
摘要:YII2中的yii\db\Query给我们提供了非常丰富的方法,方便我们构建复杂的SQL语句。 Query()与createCommand最大区别在于,后者直接使用我们写好的SQL语句,前者通过参数和数据库类型生成不同SQL,迁移性更好。 阅读全文
posted @ 2018-03-31 11:53 怀素真 阅读(1049) 评论(0) 推荐(0) 编辑
YII2中使用RBAC对模块,控制器,方法的权限控制以及规则的使用
摘要:在使用YII2中自带的RBAC时,需要先配置config/web.php: 如果你需要运行yii migrate来创建表,那么config/console.php也需要同上面一样配置一下。 cmd进入项目目录,运行如下命令: 你会发现在数据库中创建了四张表 为了演示,我们在控制器下分别写四个方法,分 阅读全文
posted @ 2018-03-30 17:30 怀素真 阅读(743) 评论(0) 推荐(0) 编辑
YII2中behavior行为的理解与使用
摘要:YII2中的行为说白了就是对组件功能的扩展,在不改变继承关系的条件下。 行为附加到组件后,行为将注入自已的方法和属性到组件,可以像组件访问自定义的方法和属性一样访问行为。 注意行为是对功能的扩展,不要乱用行为,比如有一个动物类和一个人类,他们各自有自已的名称,身高,体重,这些是属性。 他们都会跑,这 阅读全文
posted @ 2018-03-29 16:48 怀素真 阅读(4243) 评论(0) 推荐(0) 编辑
YII2中actions的作用与使用
摘要:我们常在控制器中看到一个actions的方法,这个方法具体的作用是共用一些功能相同的action,方便调用。 当然我们也可以自已写一些action来进行调用。在项目目录下创建common目录,并创建TestAction.php文件。action文件的存放路径可以随意指定。 控制器代码如下: 这样我们 阅读全文
posted @ 2018-03-29 14:41 怀素真 阅读(5621) 评论(0) 推荐(0) 编辑
YII2中验证码的使用
摘要:验证码的使用是比较频繁的。YII2中已经帮我们做好了封装。 首先我们在控制器里创建一个actions方法,用于使用yii\captcha\CaptchaAction 显示页面代码如下: 演示结果如下: 上面控制器中验证码的验证方式是我们手动的。我们也可以创建一个模型配置rules()来自动完成。 控 阅读全文
posted @ 2018-03-29 14:20 怀素真 阅读(3882) 评论(1) 推荐(1) 编辑
YII2中分页组件的使用
摘要:当数据过多,无法一页显示时,我们经常会用到分页组件,YII2中已经帮我们封装好了分页组件。 首先我们创建操作数据表的AR模型: 然后创建分页的控制器: 最后就是显示数据分页: 最后效果如下: 阅读全文
posted @ 2018-03-29 10:41 怀素真 阅读(1057) 评论(0) 推荐(0) 编辑
YII2中自定义用户认证模型,完成登陆和注册
摘要:有些时候我们需要自已定义用户类,操作自已建的用户表,来完成登陆和注册功能。 用户表结构如下,当然可以根据自已的需要添加或删除: 然后我们在models下创建MyUser.php,代码如下: 创建完我们自已的用户模型类后,我们需要在配置文件中修改成我们自已的,在config\web.php 然后我们创 阅读全文
posted @ 2018-03-28 18:24 怀素真 阅读(1002) 评论(0) 推荐(0) 编辑
YII2表单中上传单个文件
摘要:有些时候我们提交的表单中含有文件。怎么样让表单里的数据和文件一起提交。 我的数据表tb_user内容如下: 表单页面代码如下(至于为什么没有用ActiveForm来创建,这个就不解释了): 模型类代码如下: 控制器代码如下: 这样我们就可以通过表单上传图像了。 阅读全文
posted @ 2018-03-28 11:26 怀素真 阅读(492) 评论(0) 推荐(0) 编辑
YII2中操作数据库的方式
摘要:一、以createCommand方式: 二、以AR(Active Record)方式操作数据库 我们需要创建一个继承自\yii\db\ActiveRecord的模型,然后重写tableName()函数,返回要操作的表名。 常用操作如下: 具体更多的操作方式建议查看官方文档。 阅读全文
posted @ 2018-03-27 12:09 怀素真 阅读(6164) 评论(0) 推荐(1) 编辑
YII2中如何自定义全局函数
摘要:有些时候我们需要自定义一些全局函数来完成我们的工作。 方法一: 直接写在入口文件处 方法二: 在app下创建common目录,并创建functions.php文件,并在入口文件中通过require引入。 方法三: 通过YII的命名空间来完成我们自定义函数的引入,在app下创建helpers目录,并创 阅读全文
posted @ 2018-03-27 09:21 怀素真 阅读(789) 评论(0) 推荐(0) 编辑