使用Yii枠組みを教えて欲しいとの付き合い方"について考える過程の属性を表示する前に使用CHtml::activeTextField()
質問
いんこラインのコードのビュー。
<?php echo CHtml::activeTextField($model,'start_time'); ?>
start_timeはUNIXタイムスタンプ.時だけを表示するビューの適用できなど便利な機能日付()ことです。がこのような状況での出願はライブラリリファレンスを参照するときの表示で、分かりによる上記のコードについて教えてください。(この場合のタイムスタンプ/日が独特ですが、私はもう一つなの日付かれたといっても働きたいと
"値のデータベース" <>"異なった表現の値が異なる。
感謝=)
解決
原則として延長 CActiveRecord::afterFind()
データに変換しへの人が読める形式 CActiveRecord::beforeValidate()
に変換します。
あなたが必要以上のフォーマットをご購入いただいた、できればと考えていYiiのsetterか、セッターはいかがでしょう?
有
CActiveRecord::getFieldName()
やCActiveRecord::setFieldName($value)
を乗せる事ができる CHtml::activeTextField($model, 'fieldName')
おます。明らかに、操作に使用する配下のデータベースの列の方法ようですstart_timeお場合)。武器agiは、dexで下がらないboxerぐ.
他のヒント
私の代わりにこのようなCHTML :: activeTextFieldのCHTML :: TextFieldを使用しました
<?php echo CHtml::textField(get_class($model).'[start_time]', date('Y-m-d H:i', $model->start_time)); ?>
それは長期的にうまくいくならば、私が表示されます。
の代わりに右が日付の方法を適用すると同じように、私は$モデル - > getSomeProcessedData()のようななめらかを持つことができます。クール..:]
IMO、afterFind()あなたの検索を遅く作ると私はbeforeValidateは()表示データ内の任意の役割を果たしているとは思いません。 Iは、START_TIME値のゲッターをオーバーライドするモデルクラスにgetttart_time()を追加することを好みます。あなたの書式設定コードがだけがデータを表示する必要がある場合があり実行します。