Yii2:如何格式化ActiveField中的值?

时间:2017-07-27 19:46:56

标签: php yii2

在我的表格上,我有这个:

echo $form->field($model, 'amount')->textInput();

如果来自数据库的值为42.5,我希望在输入字段中将其格式化为两位小数,如42.50。我该怎么做?

我在ActiveField文档...

中找不到有关格式化的任何信息

2 个答案:

答案 0 :(得分:3)

您可以使用格式化程序功能

$form->field($model, 'amount', 
     ['inputOptions' => ['value' => Yii::$app->formatter->asDecimal($model->amount)]])

http://www.yiiframework.com/doc-2.0/yii-i18n-formatter.html

http://www.yiiframework.com/doc-2.0/guide-output-formatting.html

答案 1 :(得分:0)

作为@scaisEdge 答案的替代方法,您还可以覆盖/修改 ActiveField 渲染器中的值。

这是一个 ActiveField::textInput()

示例
<?= $form->field($model, 'vat_rate')
    ->textInput([
        'maxlength' => true,
        'placeholder' => '0.00',
        'value' => (float) $model->vat_rate * 100,
    ]) ?>