バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > EventArgsにsetしたOrder情報が反映されない。

フロント機能

新規スレッドを追加する

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
shimbo
投稿日時: 2018/12/20 6:29
対応状況: −−−
半人前
登録日: 2018/10/5
居住地:
投稿: 27
Re: EventArgsにsetしたOrder情報が反映されない。
早とちりだったようです(汗)

$this->app['orm.em']->persist($order);
$this->app['orm.em']->flush($order);


上記を追加しても、反映されていません。うーん、なぜでしょうか……。
shimbo
投稿日時: 2018/12/19 20:47
対応状況: −−−
半人前
登録日: 2018/10/5
居住地:
投稿: 27
Re: EventArgsにsetしたOrder情報が反映されない。
shimbo
投稿日時: 2018/12/19 12:20
対応状況: −−−
半人前
登録日: 2018/10/5
居住地:
投稿: 27
EventArgsにsetしたOrder情報が反映されない。
[EC-CUBE] EC-CUBE3.0.16
[レンタルサーバ] XServer
[OS] FreeBSD 9.1-RELEASE-p24
[PHP] 5.6.36
[データベース] MySQL 5.7.16
[WEBサーバ] Apache
[ブラウザ] Chrome
[導入プラグインの有無] 自作中
[現象]

イベントをフックする
public function onFrontShoppingIndexInitialize(EventArgs $event)
を作成しました。その中で、送料の値を変更する処理を入れています。

$order->setDeliveryFeeTotal($deliveryFee);
$event->setArgument('Order', $order);


この直後の時点では、$event->getArgument('Order')->getDeliveryFeeTotal()すると、正しい値が設定されています。

しかし受注確定後のフックポイント
public function onFrontShoppingConfirmComplete(EventArgs $event)の中で、

$event->getArgument('Order')->getDeliveryFeeTotal()すると、データベースに初期設定された送料に戻ってしまっています。結果として受注マスターに登録された値も初期設定値でした。

Orderに値を入れた後で、何かflush()のような反映する操作が必要なのでしょうか?

手がかりを教えて頂けたら助かります。


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


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,288名です
総投稿数は109,688件です

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1567
9
mcontact
1240
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
796
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

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

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