1

私は yii と Yii Booster を使っています。

TbEditableColumnに表示されるテキストを切り捨てたい。ここで説明されているように、 CFormatterを拡張しました。

テキストを切り捨てるために、列定義属性 ' type ' を array('type'=>'shortText', length=>20)に設定しました

//gridview

'columns'=>array(
  array(
    'type' => array(
        'type' => 'shortText',
        'length' => 10
    ),
),

)

編集できない列でも問題なく機能します。設定すると機能しません:

'class' => 'bootstrap.widgets.TbEditableColumn'

TbEdiableColumn で動作させる方法はありますか?

4

1 に答える 1

1

今、それは脳くすぐりでした。TbEditableColumn最終的には extendsですが、ウィジェットをデータ セルCDataColumnに適用できる場合、グリッド ビューのフォーマッタはまったく考慮されません。には、データ セルに表示されるテキスト (つまり、クリックする前) を制御するプロパティがあります。残念ながら、それは静的なようです。どの形式でも評価されることはないため、式や無名関数を渡すことはできません。TbEditableFieldTbEditableFieldtext

TbEditableField結論:フォーマッターを拡張して引き込む方法を教えない限り、実行できません。TbEditableColumnフォーマッタインスタンスを渡すように拡張する必要があります。

于 2013-12-13T18:11:30.067 に答える