0

私はPHPとLaravel 4で作業しています.Formメソッドを使用して、編集フォームに以下のようなモデルを入力します...

Form::model($timecard, array('route' => array("admin/timecard/edit", $id)))

私の問題は、一部のテキスト フィールドにデータベースからの DateTime 値が入力され、フォーム フィールドにデータを入力する前に、これらの特定のフィールドでコードを実行できるようにする必要があることです。

それを行う方法、またはモデルを使用してフォームフィールドを自動入力しながらそれを行うことが可能かどうかについてのアイデアはありますか?

たとえば、以下のこのフォーム フィールドには GET 値が入力されます。それ以外の場合は、列のデータベースからのデータを含むフィールドを取得しますclock_in_datetimeが、フォームに入力する前にこのフィールドで PHP 関数を実行して、TimeZone などを適用できるようにしたいと考えています。それにフォーマット...

{{ Form::text("clock_in_datetime", Input::get("clock_in_datetime"), array(
    "placeholder" => "2013-09-04 14:22:35",
    'class' => 'form-control'
)) }}
4

1 に答える 1

2

次のことができると思います。

{{ Form::text("clock_in_datetime", yourFormattingFunction(Form::getValueAttribute("clock_in_datetime")), array(
    "placeholder" => "2013-09-04 14:22:35",
    'class' => 'form-control'
)) }}

Form::getValueAttribute()どの値を使用するか (前の入力、セッション、またはモデル) を決定する Laravel の方法です。したがって、フォーマット関数をこの関数の出力に適用できます。

http://laravel.com/api/source-class-Illuminate.Html.FormBuilder.html#751-773

于 2013-09-21T23:25:06.610 に答える