zoukankan      html  css  js  c++  java
  • Yii2 初体验

    看着Yii1.1有那么多的不爽,又看着Yii2一天天成熟起来,于是凑一个小项目的原型阶段,试着用Yii2搞一搞。

    随手写了一点体会,以一个Yii1的熟练工人看向Yii2的视角,简单一说吧。(将来随时可能在本文后面追加补充)

    • 默认的模板使用了bootstrap,很美观。
    • basic版和advanced版的config文件不大一样。basic版里面,有web.php,后者没有。
    • 设置为中文显示:config/web.php 中,增加一行 'language'=>'zh-CN'。然后 Home 变成了首页,Powered by Yii Framework 变成了技术支持 Yii 框架
    • 使用gii生成model,我勾选了Use Table Prefix,这时生成的model,其tableName()函数返回的是 {{%menu}}。如果不勾选,将返回表名的全称,如 ssn_menu
    • models/user.php里,增加了不少函数,方便了很多。
    • 在models及controllers中,随处都用 [ ... ] 代替 array(...),好看和清爽了许多。
    • LibCrudController 对应的URL是 ?r=lib-crud
    • 开始尝试用户登陆部分的定制。。http://www.yiichina.com/tutorial/332
    • 开始做CRUD (from 20:20)
    • User::find()->all() 而不是 User::model()->findAll()
    • 在_form.php中引用User,需要首先声明 use appmodelsUser;
    • 在视图文件中引用ArrayHelper需首先声明 use yiihelpersArrayHelper;
    • 在Yii v1.1中需要三行才能搞定的数据录入元素,这里只要一行:
    <?= $form->field($model, 'name1')->textInput(['maxlength' => true]) ?>
    • gii生成的CRUD界面大气、美观了许多,且提示信息自动为中文(这应该是GridView的功劳)
    • User::findOne($user_id); 和下面的这个并不一样。这个返回一条记录,下面的不知是什么鬼。
    $user=User::find()->where(['id' => $id]);
    • 增加 my.css:首先在web/css中增加my.css,然后在assets/AppAsset.php中
    public $css = [
    'css/site.css',
    'css/my.css',
    ];
    • 置入js文件:$this->registerJsFile("js/start.js"); --当依赖jquery的时候,这个明显不行,提示找不到$。
    • https://segmentfault.com/a/1190000003742452 这里讲得很清楚。几个方案。其中修改 assets/AppAsset.php的方案已调通。其中一个关键点在于(见黑体字):AppAsset::addScript($this,'@web/js/start.js');
    • 页面右下有一个酷酷的debug-toolbar按钮,点击会弹出一个水平的状态条。
    • 地址栏的 index.php?r=site/index 会变成 index.php?r=site%2Findex
     
     
     
     
     
     
  • 相关阅读:
    MySQL存储过程参数【4】
    MySQL存储过程的变量【3】
    MySQL存储过程入门【2】
    MySQL存储过程简介【1】
    MySQL删除重复行的方式
    在MySQL单个表中找到重复的值
    MySQL比较两个表不同的数据
    【思维】P5743 【深基7.习8】猴子吃桃——有趣的解法,归纳推导
    对判断质数的算法的优化
    【思维】P1321 单词覆盖还原
  • 原文地址:https://www.cnblogs.com/anjo/p/5974748.html
Copyright © 2011-2022 走看看