のデフォルト値を設定するために、私はsymfonyの2.8Symfony2の:私は名前のテーブルを持ってどのようにフィールドのDateTime
と連携:DateTimeフィールド「fechaAlta」
と「Docentes」私はのデフォルト値を必要とします「newAction」と「編:このフィールドは、私は新しいレコードを追加するとき
は、私が「DocentesController.php」symfonyは2関数を作成したファイルでは、コマンドgenerate:doctrine:crud
を使用して、CRUDを生成する「今日」でありますitAction "(他の中でも)。どちら同じフォームを使用して、フォルダの「フォーム」でファイルに「DocentesType.php」を挿入します。
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('fechaAlta', 'date')
->add('dni')
#
;
}
を私は2つの解決策を試してみました:
ONE:実体ファイルで名付けられ、「Docentesない日01月01、2011年:fechaAlta 『の値で表示されます。」
public function __construct()
{
$this->fechaAlta = new \DateTime();
}
しかし、私は新しいレコードを追加するためのフォームを使用する場合、フィールドは、私は関数を追加』の.php現在の日付で表示されます。
TWO:私は新しいレコードを追加するとき
->add('fechaAlta', 'date', array(
'data' => new \DateTime()))
##
は今、私は再び値を得る:
私は、関数buildFormを編集日01月01、2011年に私が編集するときレコード、Symfonyは私の元の値、例えば2016-03-25を変更し、今日の価値を設定します!私が必要とするすべての反対!
私は変更: - fechaAlta」、 '日付' と '>(追加' を、配列( '012' '' '' '' '' '' '' 'データ' => new \ DateTime())) 'to' - > add( 'fechaAlta'、 'date'、array( 'data' => new \ DateTime ')))'新しいレコードの場合は今日の日付を取得しますが、レコードを編集するときは問題は残ります。 –
サーバーとphp.iniの日付/時刻/タイムゾーンの設定が正しいことを100%確信していますか?とにかく、あなたは '$ entity-> setFetchAlta(new \ DateTime());を呼び出すことができました;' newAction'で私は思いますか? – ccKep