在Yii2中集成Markdown编辑器 [ 2.0 版本 ]
前言
身为一个程序员,我们都知道Markdown编辑器在IT网站应用得非常广泛,比如GitHub、SegmentFault、CSDN博客、YiiChina上都可以见到它的身影,因此,下面介绍下怎么在Yii2框架中集成Markdown编辑器。
使用和下载第三方扩展
在Yii2中集成Markdown编辑器,可以使用yii2-lepture-markdown-editor-widget这个第三方扩展。
按照GitHub上的文档介绍,我们可以使用composer来下载这个依赖包,在命令行终端中,切换到项目目录下,执行命令:
composer require ijackua/yii2-lepture-markdown-editor-widget:dev-master
下载完成后,在vendor
目录下会多出一个ijackua
文件夹,里面存放的就是依赖包的源代码和前端资源文件。
可能会遇到的问题
如果在下载依赖包的过程中出现上面的错误,可以尝试一下在composer.json文件中添加下图中的语句:
在视图中使用Markdown编辑器
依赖包下载好了,那么接下来就可以在视图的表单中使用它了,使用的方法很简单,下面提供一个简单的例子来做参考:
<?php
use yii\helpers\Html;
use yii\widgets\ActiveForm;
use common\models\Archives;
use ijackua\lepture\Markdowneditor;
use ijackua\lepture\MarkdowneditorAssets;
/* @var $this yii\web\View */
/* @var $model common\models\Archives */
/* @var $form yii\widgets\ActiveForm */
MarkdowneditorAssets::register($this);
?>
<div class="archives-form">
<?php $form = ActiveForm::begin(); ?>
<?= Markdowneditor::widget(['model' => $model, 'attribute' => 'body']) ?>
<div class="form-group">
<?= Html::submitButton('提交', ['class' => 'btn btn-success']) ?>
</div>
<?php ActiveForm::end(); ?>
</div>
效果图
下面是yii2-lepture-markdown-editor-widget的效果图:
编辑界面
预览界面
PS:yii2-lepture-markdown-editor-widget是支持通过一些参数来配置它的,比如是否显示顶部的工具栏,详细的信息可以在它的GitHub主页上可以找到。
完:)
ljfrocky
注册时间:2015-03-29
最后登录:2015-07-07
在线时长:3小时39分
最后登录:2015-07-07
在线时长:3小时39分
- 粉丝9
- 金钱120
- 威望20
- 积分350
共 9 条评论
简洁实用, 我刚弄CKeditor ..
我是手动下载安装的,可能会有一下配置:建议参考
Markdown编辑器补充:
#文件夹修改: code\vendor\ijackua\yii2-lepture\Markdowneditor.php
在autoload_psr4.php添加:
#文件路径:code\vendor\composer\autoload_psr4.php 'ijackua\\lepture\\' => array($vendorDir . '/ijackua/yii2-lepture'),
写在composer.json里面,然后再composer dump-autoload才是正道。你这个方法是达到了目的,但是歪门邪道。
@FatrBaby 本人比较菜,让您见笑了
@FatrBaby 怎么我用markdown编写了内容了提交了,从数据库里取出来然后页面不显示效果呢
我在https://github.com/bubifengyun/book-yii2-dev-process,准备借助yiichina里的教程,编辑成一本书,最后用某高校LaTeX论文模板美化一下,每月或者更长时间发布PDF教程总结,求支持。
我想把你的教程录入到这本书里,并记录您的名字及原网址,可否?谢谢啦。
赞一个~~~
Mark!
赞!试试先!
先赞
写的可以啊,很清晰明朗,要是我回头用到这个,我就按照你的方法,我也试试
我按照您的方法下载并使用了、但是效果没有显示出来