2017-03-21 / Javascript
CKEditor编辑器相当好用, 扩展丰富, 界面漂亮,有时候添加内容编辑了好久,结果网络出错或者其它方面的原因,还没提交或者一提交,数据没了,那个难受劲,为了解决这个问题,我将discuz里的自动保存草稿功能给挖出来了,用localStorage实现的,支持多浏览器,操作方便,不需要点击自动保存,效果如下:

当然实现起来也是相当简单的,只需要几段js代码就可以了,阅读全文...
2017-03-20 / Yii2
这里用的yii2高级模板, 基本模板的配置文件在一个文件里,方法基本没什么区别,

1.用户表
要有两个用户表, 当然一个也行,分开是省得麻烦,既然是分离了就彻底分开, 前台表user,后台表user_backend,表结构这里不再说明了,只列出字段

id username auth_key password_hash password_reset_token email status created_at updated_at


2.配置文件
分别将frontend/config/main.php和backend/config/main.php里增加如下代码中user部分内容,注意放在配置文件components参数之内,有user部分的修改即可阅读全文...
2017-03-07 / Yii2
yii2的一个强大之处之一就是他的Form组件,既方便又安全。具体的rules使用方法这里就不提了, 如果你的一般验证规则,如require email captcha等可用,而unique却不起作用,可以朝下看.已经过实验,没有问题
我这里用的是高级模板,普通模板没用过,应该差不多, 在yii2首次安装之后,common/models/User.php就有username和email的unique规则,因为我前后台分离,所以将User.php分别在frontend和backend复制了一份,删除了common下的User.php,规则如下:
    /**
     * @inheritdoc
     */
    public function rules()
    {
        return [
            [['username','email'], 'trim'],
            [['username','email','password'], 'required'],
            ['username', 'unique', 'targetClass' => '\frontend\models\User', 'message' => '用户名已存在.'],
            ['username', 'string', 'min' => 5, 'max' => 255],

            ['email', 'email'],
            ['email', 'string', 'max' => 255],
            ['email', 'unique', 'targetClass' => '\frontend\models\User', 'message' => '邮箱已被注册.'],

            ['password', 'string', 'min' => 6, 'max' => 30],
            ['verifyCode', 'required','message'=>'验证码不能为空'],
            ['verifyCode', 'captcha','message'=>'验证码错误'],
        ];
    }
阅读全文...
2017-03-05 / Yii2
控制器内成员变量
public $layout = false; //不使用布局
public $layout = "main"; //设置使用的布局文件
控制器成员方法
$this->layout = false; //不使用布局
$this->layout = "main"; //设置使用的布局文件
阅读全文...
2017-03-03 / Javascript
Code Snippet是CKEditor4.4.1的新插件,主要提供添加代码片段高亮显示的功能。
另外注意一点的是,Code Snippet只是作为CKEditor的插件,真正实现代码高亮的是highlight.js这个代码高亮JS库。
Code Snippet只是将highlight.js作为默认的高亮库,由于highlight.js已经集成在Code Snippet中,所以我们在使用CKEditor时候是不需要另外再引用highlight.js这个库。

安装方法:
下载Code Sn阅读全文...
2017-02-28 / Yii2
ajax异步post提交出现400 bad request错误,
在确保配置无误且url地址正确的情况下,因为yii2的crsf验证不通过引起,
解决办法有2个,

1.关闭Csrf
这个方法不推荐,能开着尽量不要关
public function init(){
    $this->enableCsrfValidation = false;
}

2.在AJAX的data参数中加入_csrf字段阅读全文...
2017-02-24 / 其它
我的笔记本是华硕k40id, 在13年大概装了itunes,后来删除了,最近要使用,结果死活装不上itunes,不管怎么整,都是提示不能删除旧版本的apple software update, 在网上找了N种方法,这些方法全试了,没一个可行的 1.windows intsall clean,首次打开确实有apple software update,立马删除,重启电脑不行 2.查注册表把苹果的所有项全清理了,不只是apple software update,依然不行 3.还有的说下载一个新的apple software update,找了好久找到了下载地址,直接安装不行,跟安装itunes一样提示错误,有的说在控制面板对apple software update,右键修复选择下载的新的版本,然后再删除,控制面板根本没这一项 4.后来看到一个说,将itunes右键以压缩包方式打开,然后将apple software update删除,我不知道他用的什么系统,我的win7,根本没有以压缩包方式打开,
4.最终于效果如图
阅读全文...
2017-02-22 / Yii2

Modal弹窗是一款bootstrap的js插件,使用方便,显示效果好。

使用效果图
效果还是很漂亮的,


使用方法:
1、在view层需要点击出现弹窗的位置创建一个按钮,用于调modal的显示,当然需要在;视图层引入类:
 

阅读全文...
2017-02-20 / Yii2
yii2自带分页, 用起来很简单, 主要就是几个参数的设置

1.控制器部分
//totalCount为数据总数, pageSize为每页显示数, 'pageSizeParam'=>false可将分页路径中per-page参数隐藏去掉
use yii\data\Pagination;
$data= $News::find();
$pages = new Pagination(['totalCount' =>$data->count(), 'pageSize' => 10,'pageSizeParam'=>false]); //分页
$data = $_data->offset($pages->offset)->orderBy('itemid DESC')->limit($pages->limit)->all();
阅读全文...
2017-02-20 / Yii2
跳转到某页
功能基于linkpager扩展,具体实现为重构系统yiiwidgetsLinkPager类,使用起来跟原来一样,只多一个go的参数,
效果图如下

在common\components目录新建GoLinkPager类文件,代码如下,方法代码来源于yii\widgets\LinkPager, 注阅读全文...