首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Yii2小部件文本区(\yii\imperavi\小部件)默认值

Yii2小部件文本区(\yii\imperavi\小部件)默认值
EN

Stack Overflow用户
提问于 2018-02-09 19:08:57
回答 1查看 391关注 0票数 0

我需要将post值设置为文本区,但文本区不是普通的文本区,我使用小工具\yii\imperavi\Widget文本区,因为现在我不知道如何添加默认值。

代码语言:javascript
复制
    echo $form->field($model, $property)->widget(
    \yii\imperavi\Widget::className(), [
        'plugins' => ['fullscreen', 'fontcolor'],
        'value' => 'Hello World!',
        'options' => [
            'minHeight' => 400,
            'maxHeight' => 400,
            'buttonSource' => true,
            'convertDivs' => false,
            'removeEmptyTags' => false,
            'imageUpload' => Yii::$app->urlManager->createUrl(['/file-storage/upload-imperavi'])
        ]
    ]
)->label( $label ) ?>

这不起作用

代码语言:javascript
复制
'value' => 'Hello World!'

也许您遇到过这样的问题,并且知道如何解决?)

EN

回答 1

Stack Overflow用户

发布于 2018-02-09 21:15:09

您的小部件只是一个名为"Redactor“的伸展文本编辑器。它的目的不是为表单的底层文本字段设置“默认”值,而是为其提供丰富的编辑功能。

你需要做的就是为底层的文本字段设置一个默认值--不管有没有小工具在上面!

在Yii2中提供默认值的方法是初始化一个支持此活动文本字段的模型,并将其属性设置为给定值而不是默认的"null“。

这可以在模型类本身中完成得最好。我假设您的模型类正在扩展ActiveRecord类:

代码语言:javascript
复制
class MyModel extends yii\db\ActiveRecord
{
    public function init()
    {
        parent::init(); // this is obligatory!
        $this->attribute_name = "My default text";
    }
}

其中"attribute_name“实际上是您应该在ActiveField中进一步使用的属性的名称:

代码语言:javascript
复制
echo $form->field($model, 'attribute_name')
->widget(\yii\imperavi\Widget::className(), [...]);

我希望这能对你有所帮助!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48704504

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档