質問 > その他 > SQL文の在りか |
その他
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
mwmwmw |
投稿日時: 2016/7/6 11:46
対応状況: −−−
|
新米 登録日: 2016/7/4 居住地: 投稿: 6 |
SQL文の在りか いつもお世話になっております。
表示用の注文番号を生成し、それを既存の注文番号と紐づけて利用したいのですが そもそも ・注文番号を登録しているSQL実行文 ・注文番号を呼び出しているSQL実行文 が全く分からず苦戦しております。 注文番号をメール文に組み込んでいる箇所は eccube/service/mailservice.phpあたりではないかなと 思っているのですが・・・。 どなたかヒントをお願いいたします。 |
shhirose |
投稿日時: 2016/7/6 13:15
対応状況: −−−
|
一人前 登録日: 2014/4/24 居住地: 投稿: 94 |
Re: SQL文の在りか SQL 文はフレームワーク(Doctrin)が生成します。
注文番号を登録しているのは、ShoppingControler::confirm の $em->flush(); と記載されている部分になります。 ※実際には flush の処理内の Doctrine 側で行っていますが、意識する必要はないと思うので。 この flush を行った後であれば Entity に注文番号が既に入っている状態になりますので、$Order->getId() で注文番号を取得する事ができます。 実際に発行されている SQL が知りたければ、EC-CUBE をデバッグモードで実行すれば確認することができます。 デバッグモードの有効化 部分を参照 https://github.com/EC-CUBE/ec-cube |
mwmwmw |
投稿日時: 2016/7/6 16:12
対応状況: −−−
|
新米 登録日: 2016/7/4 居住地: 投稿: 6 |
Re: SQL文の在りか ありがとうございます。 アドバイス通り取得に成功しました。 $Orderはクラス名でその中のgetidを持ってきている という解釈をしているのですがあっているでしょうか。 また、SQL 文はフレームワーク(Doctrin)が生成とのことですが こちらでINNERJOINをつかうSQL文にしてほかのテーブルのものを紐づけしたいのですがどこのあたりを触ればよいのでしょうか。 色々と聞いてしまい申し訳ありません。 |
shhirose |
投稿日時: 2016/7/6 17:33
対応状況: −−−
|
一人前 登録日: 2014/4/24 居住地: 投稿: 94 |
Re: SQL文の在りか 引用:
$Orderはクラス名でその中のgetidを持ってきている 厳密には $Order は \Eccube\Entity\Order クラスのインスタンスが代入された変数になります。 ※インスタンスの概念を理解されているのであれば問題ございません。 引用:
Doctrine 用の設定ファイルを作成、変更することで $Order から取得することが可能です。 以下のページを参考になさってください。 http://qiita.com/shinichi-takahashi/items/9cd209d9f3a5fd1d1869 http://qiita.com/shinichi-takahashi/items/edab0ded969860af58cb ※Doctrine の知識をつけないとカスタマイズは厳しいかもしれません。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |