这篇文章主要介绍了在YII2框架中使用UEditor编辑器发布文章,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
本文介绍了详解在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();
最终页面效果
以下是发布文章功能编写完成后的效果,是不是很炫?希望对大家的学习有所帮助,也希望大家多多支持编程学习网。
沃梦达教程
本文标题为:详解在YII2框架中使用UEditor编辑器发布文章
猜你喜欢
- windows下9款一键快速搭建PHP本地运行环境的好工具(含php7.0环境) 2023-09-02
- PHP仿tp实现mvc框架基本设计思路与实现方法分析 2022-10-18
- 用nohup命令实现PHP的多进程 2023-09-02
- Laravel balde模板文件中判断数据为空方法 2023-08-30
- php微信公众号开发之秒杀 2022-11-23
- laravel实现按月或天或小时统计mysql数据的方法 2023-02-22
- PHP实现微信支付(jsapi支付)流程步骤详解 2022-10-09
- PHP简单实现二维数组的矩阵转置操作示例 2022-10-02
- laravel通用化的CURD的实现 2023-03-17
- PHP中PDO事务处理操作示例 2022-10-15