<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                > 原文出處:https://jellybool.com/post/programming-with-yii2-rich-text-input-with-redactor 首先,很慚愧的是,前幾天都出去外面玩了,沒有及時更新教程,實在是太愧疚了,所以回來之后還是好好寫完這個系列教程吧。 上一篇文章我們實現了簡單的用戶權限管理,至于更先進的RBAC,我后面會單獨出一篇文章來說說。在這一篇文章當中,我主要想寫的是在Yii2中集成一個編輯器,因為在我們的實際開發當中,一個簡單的textarea一般都是不能滿足我們的需求的,因為我們需要多種多樣的文本樣式如標題,表格啦,并且很多時候我們在這些文本當中還需要插入圖片和視頻。而這些問題目前的最好解決方案就是集成一個編輯器,鑒于大家(這里不是指程序員)都是喜歡所見即所得,所以,這里我主要是演示怎么集成所見即所得的富文本編輯器。 ## Redactor 既然是集成富文本編輯器,我們首先得找一個喜歡并且功能還不錯的編輯器,而在我這里,我選擇了[Redactor](http://imperavi.com/redactor/)這個編輯器,這不僅是因為[Redactor](http://imperavi.com/redactor/)有官方的Yii2插件package,它還是一款在保存美觀的同時又能給你提供強大功能的編輯器,在我個人的使用體驗來說,這個編輯器給我的感受時最好的。 ## 安裝 Redactor 既然決定使用[Redactor](http://imperavi.com/redactor/),我們首先要做就是來安裝[Redactor](http://imperavi.com/redactor/)了,上面說過的,Yii2有官方的插件package,并且還提供了composer的安裝方式(我最喜歡這種了), 可以看看這里:[https://github.com/yiidoc/yii2-redactor](https://github.com/yiidoc/yii2-redactor) 所以我們可以通過下面的命令來安裝Redactor: ~~~ composer require --prefer-dist yiidoc/yii2-redactor "*" ~~~ 坐等一會之后,你即將看到下面的類似信息: ~~~ - Installing yiidoc/yii2-redactor (2.0.1) Downloading: 100% Writing lock file Generating autoload files ~~~ 在這里可以看到Redactor給Yii2提供的插件目前的最新版是2.0.1。安裝完了之后,我們需要進行一些簡單的配置,還是像前面的一樣,來到`config/web.php`: ~~~ 'modules' => [ 'redactor' => 'yii\redactor\RedactorModule', 'user' => [ // here is the config for user ], ], ~~~ 我們直接在`modules`這里加上一行`'redactor' => 'yii\redactor\RedactorModule',`,這樣就可以簡單的實現[Redactor](http://imperavi.com/redactor/)提供的富文本編輯器功能了。 配置好之后,我們來將我們原先發表狀態的`textarea`替換成[Redactor](http://imperavi.com/redactor/)的富文本編輯框,來到我們的`views/status/_form.php`文件中: ~~~ <div class="status-form"> <?php $form = ActiveForm::begin(); ?> <!-- <?//= $form->field($model, 'message')->textarea(['rows' => 6]) ?> --> <?= $form->field($model, 'message')->widget(\yii\redactor\widgets\Redactor::className()) ?> ~~~ 將原來的`$form->field($model, 'message')->textarea(['rows' => 6])`注釋掉,然后替換成Redactor的文本框配置。 然后我們訪問:`http://localhost:8999/status/create`?,就可以看到類似下面的可愛頁面了: ![替代文字](https://box.kancloud.cn/2015-08-15_55cf2eb51008e.png) 沒錯,就是這么幾行代碼,我們就把富文本編輯器集成到我們的應用當中了。我們來試著創建一條狀態試試: ![替代文字](https://box.kancloud.cn/2015-08-15_55cf2eb57b306.png) 由于Redactor提交的是HTML格式的文本(一般富文本編輯器應該也是這樣)。所以我們會看到有`<p></p>`這個標簽。 ## 實現圖片上傳 上面的Redactor配置還不能正確地使用上傳圖片和管理圖片的功能,那么我們這里就來實現一下。首先我們需要在`web/`目錄下創建一個`uploads/`目錄,這是Redactor默認的上傳圖片的存放目錄;然后我們還需要修改一下`config/web.php`這個文件中的Redactor的配置: ~~~ 'modules' => [ 'redactor' => [ 'class' => 'yii\redactor\RedactorModule', 'imageAllowExtensions'=>['jpg','png','gif'] ], ~~~ 我們這里指定了上傳圖片的類型,演示時只支持`jpg`,`png`?和`gif`這三種,最后在`views/status/_form.php`中進行相應的設置: ~~~ <?= $form->field($model, 'message')->widget(\yii\redactor\widgets\Redactor::className(), [ 'clientOptions' => [ 'imageManagerJson' => ['/redactor/upload/image-json'], 'imageUpload' => ['/redactor/upload/image'], 'fileUpload' => ['/redactor/upload/file'], 'lang' => 'zh_cn', 'plugins' => ['clips', 'fontcolor','imagemanager'] ] ] ) ?> ~~~ 我們這里加入了一些`clientOptions`,我這里配置了圖片管理和上傳,文件上傳,顯示語言,和一些小插件:字體顏色,字體背景色等。圖片和文件的上傳都是用的官方默認的上傳配置,更多的配置和文檔,你可以看看這里: [https://github.com/yiidoc/yii2-redactor](https://github.com/yiidoc/yii2-redactor) > tips: 時常關注Github上的文檔更新唄 然后我們再來訪問一下:?`http://localhost:8999/status/create`?,試著上傳一張圖片試試: ![替代文字](https://box.kancloud.cn/2015-08-15_55cf2eb699f72.gif) 這張圖片是本人前幾天去鳳凰浪的時候拿手機拍的,然后我們點擊發表,又可以看到我們的status的內容了,不過這里還是HTML格式的文本。 ![替代文字](https://box.kancloud.cn/2015-08-15_55cf2eb80f5d8.png) 最后可以查看一下你的web/uploads/目錄,看看圖片是不是正確上傳了。關于更多的上傳圖片和文件的安全配置信息,你可以看看這篇文章: [How to Setup Secure Media Uploads](http://digwp.com/2012/09/secure-media-uploads/) 一路寫下來,真的是覺得[Redactor](http://imperavi.com/redactor/)非常順手,所以我還是很推薦大家在Yii2的項目中集成這個富文本編輯器,因為顏值和功能都很是awesome! ## 下一節 我們的基本流程全部實現之后,下一節之后的教程,我會更注重講解Yii2的一些特性如:Behaviors Validations等。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看