バージョン選択

フォーラム

メニュー

オンライン状況

54 人のユーザが現在オンラインです。 (34 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 54
もっと...

サイト内検索

質問 > 管理機能 > entityで作成日のフィールドを初期化するベストプラクティスは?

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
xaiam
投稿日時: 2020/6/29 16:10
対応状況: −−−
新米
登録日: 2020/6/10
居住地:
投稿: 10
entityで作成日のフィールドを初期化するベストプラクティスは?
▼テンプレート
[EC-CUBE] EC-CUBEのバージョン、新規インストールかアップデートか、等
[レンタルサーバ]    
[OS] macOS catalina
[PHP] 7.2
[データベース] MySQL 5.7.28
[WEBサーバ] Symfony開発サーバー
[ブラウザ] Chrome最新
[導入プラグインの有無]
[カスタマイズの有無] 新規エンティティ作成中
[現象]    現在Customer/Entity/の下で自作のentityを作っています。
そのentityの中にはcreateDateというフィールドがあり新しい行がDoctrineを通してテーブルに追加される度にそのカラムに現在時刻が入るようにしたいです。
下記の通りです。

/**
* @var DateTime
*
* @ORM\Column(type="datetimetz")
*/
private $createDate;

/**
* Set createDate.
*
* @return CustomerChannel
*/
public function setCreateDate(DateTime $createDate): self
{
$this->createDate = $createDate;

return $this;
}

/**
* Get createDate.
*
* @return DateTime
*/
public function getCreateDate(): ?DateTime
{
return $this->createDate;
}

この場合上記の私の希望を実現するベストプラクティスはなんだと思いますか?
現在思いついているのは
・コンストラクターに初期化式を記述する方法
・コントローラーのアクションで初期化する方法

です。
nanasess
投稿日時: 2020/7/1 12:19
対応状況: −−−
登録日: 2006/9/9
居住地: 大阪
投稿: 2088
Re: entityで作成日のフィールドを初期化するベストプラクティスは?

通常は SaveEventSubscriber で自動的に現在時刻が入ります。
https://github.com/EC-CUBE/ec-cube/blob/4.0/src/Eccube/Doctrine/EventSubscriber/SaveEventSubscriber.php


----------------
大河内健太郎(Kentaro Ohkouchi)
EC-CUBE公式エバンジェリスト
スキルニル株式会社

EC-CUBE1系2系長期サポートホスティングサービス CUBE Lab
https://cubelab.info/

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBEペイメント

公式ストアEC-CUBE4系デザインテンプレート続々リリース中

統計情報

総メンバー数は64,347名です
総投稿数は97,197件です

投稿数ランキング

1
seasoft
7332
2
AMUAMU
2712
3
468
2478
4
nanasess
2088
5
umebius
1649
6
yuh
1612
7
red
1410
8
h_tanaka
1029
9
fukap
907
10
tsuji
863
11
shutta
835
12
tao_s
792
13 ramrun 789
14 karin 657
15 sumida 641
16
homan
633
17 DELIGHT 571
18
patapata
502
19
flealog
485
20 tonton 437


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.