機能要望 > その他 > お客様情報の項目追加2 |
その他
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
romen |
投稿日時: 2016/10/7 16:17
対応状況: −−−
|
半人前 登録日: 2016/9/30 居住地: 投稿: 12 |
お客様情報の項目追加2 さきほど質問をしたものです。サンプルで作ったデータテーブルを作成し、そのデータテーブルにマイグレーションファイルでフィールドの追加に成功しました。
この後は、entityファイルやcontroller.phpやtwigファイルなど編集すると思います。 ここで質問なのですが、デフォルトテンプレートのゲスト購入のお客様情報を入力し、データを保存して何処にデータが保存されているか確認したのですがdtb_orderにデータがありました。 しかし、ゲスト購入のお客様情報入力のshoppingControllerを見るとentityで使われてるのはCustomer,CustomerAddressになっています。 Orderというentityは使われていませんでした。編集するのはCustomerとCustomerAddressだけでいいのでしょうか? //ShopiingCotroller namespace Eccube\Controller; use Eccube\Application; use Eccube\Common\Constant; use Eccube\Entity\Customer; use Eccube\Entity\CustomerAddress; use Eccube\Entity\ShipmentItem; use Eccube\Entity\Shipping; use Eccube\Event\EccubeEvents; use Eccube\Event\EventArgs; use Eccube\Exception\CartException; use Eccube\Exception\ShoppingException; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\Validator\Constraints as Assert; class ShoppingController extends AbstractController {・・・・ 自分の中でも情報が上手く整理できていません。ご教授お願いします。 |
umebius |
投稿日時: 2016/10/7 16:40
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: お客様情報の項目追加2 // 受注情報を作成
try { // 受注情報を作成 $app['eccube.service.shopping']->createOrder($Customer); } catch (CartException $e) { $app->addRequestError($e->getMessage()); return $app->redirect($app->url('cart')); } nonmemberのここでCustomerの情報がOrderに入ってます。 $app['eccube.service.shopping']->createOrder($Customer);の部分ですね。 追加情報をDBに残したいのであればOrderにもカラムが必要です。 どんな情報かわかりませんが、ShippingやShipmentItem、OrderDetailなどに追加も検討ですかね。
|
romen |
投稿日時: 2016/10/7 16:49
対応状況: −−−
|
半人前 登録日: 2016/9/30 居住地: 投稿: 12 |
Re: お客様情報の項目追加2 追加したい情報は開始日だけを入力してもらうのでdatetimeではないかと思っています。マイグレーションファイルでorderとcustomerの両方にカラムを作ってみます。
マイグレーションファイルでデータベースを追加した場合は、entityファイルなども修正していくで間違いはありませんか? |
umebius |
投稿日時: 2016/10/7 17:03
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: お客様情報の項目追加2 はい、Entityとyamlは修正必要ですね。
|
romen |
投稿日時: 2016/10/7 17:16
対応状況: −−−
|
半人前 登録日: 2016/9/30 居住地: 投稿: 12 |
Re: お客様情報の項目追加2 質問ばかり申し訳ないのですが、既存のymlファイルを修正して新しくEntityファイルをコマンドで生成するのはできないのでしょうか?
マイグレーションファイルでデータベースを追加するのが推奨されているのなぜでしょうか? |
umebius |
投稿日時: 2016/10/7 17:20
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: お客様情報の項目追加2 できますよ。さっきのコマンドでEntity自動生成できませんか?
vendor/bin/doctrine orm:generate:entities --extend="Eccube\Entity\AbstractEntity" src 参考ページにも載ってたと思います。 まぁカスタマイズ済みだったりプラグイン導入してるとエラー出ることが多いという印象ですが...
|
romen |
投稿日時: 2016/10/7 17:36
対応状況: −−−
|
半人前 登録日: 2016/9/30 居住地: 投稿: 12 |
Re: お客様情報の項目追加2 今行ってみたらできたのですが、.php〜というファイル形式で生成されるのは仕様ですか?
|
umebius |
投稿日時: 2016/10/8 18:51
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: お客様情報の項目追加2 「.php〜」ですか?
それはおかしいですね。 私の場合普通に.phpです。 また、Customer.dcm.ymlにカラム追加して 上記コマンド打てば既存のCustomer.phpに差分的にプロパティとゲッターセッターが追加されてます。
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |