相思资源网 Design By www.200059.com
本文介绍了详解在YII2框架中使用UEditor编辑器发布文章 ,分享给大家,具体如下:
创建文章数据表
文章数据表主要有4个字段
1.id 主键(int)
2.title 标题(varchar)
3.content 内容(text)
4.created_time 创建时间(int)
创建文章模型
创建文章模型,不要忘记设置验证规则和字段的名称
namespace backend\models; class Article extends \yii\db\ActiveRecord { public function rules() { return [ [['title', 'content'], 'required'], ]; } public function attributeLabels() { return [ 'id' => 'ID', 'title' => '名称', 'content' => '内容', ]; } }
创建控制器
创建文章控制器并编写发布文章功能
namespace backend\controllers; use backend\models\Article; class ArticleController extends \yii\web\Controller { /* * 发布文章 */ public function actionAdd() { $article = new Article(); if($article->load(\Yii::$app->request->post()) && $article->validate()){ $article->created_time = time(); $article->save(); \Yii::$app->session->setFlash('success','文章添加成功'); return $this->refresh(); } return $this->render('add',['article'=>$article]); } }
安装UEditor小部件
使用composer命令安装
composer require kucha/ueditor "*"
在控制器中定义处理上传文件的动作
在控制器中定义动作,用于处理UEditor上传的文件。
可以配置域名,上传路径,上传文件命名格式等等
public function actions() { return [ 'upload' => [ 'class' => 'kucha\ueditor\UEditorAction', 'config' => [ "imageUrlPrefix" => "",//图片访问路径前缀 "imagePathFormat" => "/upload/image/{yyyy}{mm}{dd}/{time}{rand:6}" //上传保存路径 "imageRoot" => Yii::getAlias("@webroot"), ], ] ]; }
在视图中显示UEditor编辑器
在视图表单中使用如下代码显示UEditor编辑器
$form = \yii\bootstrap\ActiveForm::begin(); echo $form->field($article,'title'); echo $form->field($article,'content')->widget('kucha\ueditor\UEditor',[ 'clientOptions' => [ //编辑区域大小 'initialFrameHeight' => '200', //设置语言 'lang' =>'en', //中文为 zh-cn //定制菜单 'toolbars' => [ [ 'fullscreen', 'source', 'undo', 'redo', '|', 'fontsize', 'bold', 'italic', 'underline', 'fontborder', 'strikethrough', 'removeformat', 'formatmatch', 'autotypeset', 'blockquote', 'pasteplain', '|', 'forecolor', 'backcolor', '|', 'lineheight', '|', 'indent', '|' ], ] ]); echo \yii\bootstrap\Html::submitButton('提交',['class'=>'btn btn-info']); \yii\bootstrap\ActiveForm::end();
最终页面效果
以下是发布文章功能编写完成后的效果,是不是很炫?希望对大家的学习有所帮助,也希望大家多多支持。
相思资源网 Design By www.200059.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
相思资源网 Design By www.200059.com
暂无详解在YII2框架中使用UEditor编辑器发布文章的评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。