0

私のMySQLにはbirthdate DATEユーザー用のフィールドがあります。しかし、FORM では、1 つの単純なテキスト フィールドとして表示されます。

<?=echo $form->textField($model,'birthday')?>

Yii が DATE を認識し、3 つの選択フィールドの日/月/はいをフォーマットする方法はありますか? 私は Cakephp を使用しましたが、自動的に実行され、開発に大いに役立ちました。

4

1 に答える 1

1

いいえ、Yiiがこれを自動的に行う方法はありません。これを行う最も簡単な方法は、フォームを制御するモデルにさらに3つのフィールドを追加することです。たとえば、次のようになります。

date_year
date_month
date_day

モデル内の範囲/制限/タイプを処理するためのルールを設定できます。フォームでは、これら3つのモデルをテスト入力として使用できます。フォームが送信されると(ほとんどの場合、コントローラー/アクションに)、3つの新しいモデル属性を連結して、元のモデル属性の文字列/タイムスタンプを形成できます。

$model->birthdate = $model->date_year."/".$model->date_month."/".$model->date_day

もう1つの方法は、jQuery UI datepicker(デフォルトでYiiに組み込まれている)を使用することです。

于 2012-11-06T07:21:27.497 に答える