1. chihiro-adachi

    Posted

    chihiro-adachi
Changes in title
+EC-CUBE3のメモ
Changes in tags
Changes in body
Source | HTML | Preview
@@ -0,0 +1,62 @@
+# EC-CUBE 3の開発メモ
+[EC-CUBE 3 リファクタガイドライン](https://github.com/EC-CUBE/ec-cube/wiki/%E3%83%AA%E3%83%95%E3%82%A1%E3%82%AF%E3%82%BF%E3%82%AC%E3%82%A4%E3%83%89%E3%83%A9%E3%82%A4%E3%83%B3)にそって、管理画面>ポイント管理を作ってみるまでのメモ。
+
+# 環境設定
+
+* 利用ツール
+ + Xampp
+ - PHP5.4
+ - MySQL
+ + NetBeans
+
+Xamppでも一応できる
+insaller.shが動かせないので、いろいろ頑張る(あとでかく:構築手順)
+
+# ポイント管理
+
+## ぷるりく
+https://github.com/EC-CUBE/ec-cube/pull/64/files
+
+## 修正ファイル一覧(不要なのはのぞく、以下5ファイル修正必要)
+src/Eccube/Controller/Admin/Basis/PointController.php
+src/Eccube/ControllerProvider/AdminControllerProvider.php
+src/Eccube/Form/Type/PointType.php
+src/Eccube/View/Admin/Basis/point.twig
+src/Eccube/ServiceProvider/EccubeServiceProvider.php
+
+## 完成までの流れ
+
+以下の順番でやるとイメージつきやすい
+
+* ルーティングを修正する
+ - src/Eccube/ControllerProvider/AdminControllerProvider.php
+* コントローラを作成する
+ - src/Eccube/Controller/Admin/Basis/PointController.php
+* テンプレートを作成する
+ - src/Eccube/View/Admin/Basis/point.twig
+
+いったんここで画面表示して表示されるまで修正
+
+* フォーム作成
+ - src/Eccube/Form/Type/PointType.php
+ - いったんType以下にフラットで配置でよい
+* コンテナに必要なもの追加、修正
+ - src/Eccube/ServiceProvider/EccubeServiceProvider.php
+ - 作成したFormTypeは、ServiceProviderに追加しないとだめ
+ - BaseInfoレポジトリを追加しておくと楽
+
+FormTypeに定義するバリデータなどはSymphonyのドキュメントを参照しながら置き換えていく
+
+http://docs.symfony.gr.jp/symfony2/reference/forms/types.html
+http://docs.symfony.gr.jp/symfony2/reference/constraints.html
+
+
+## バリデータでNoticeがでたら、、、
+```
+Notice: Trying to get property of non-object in /var/www/Myblog/vendor/symfony/symfony/src/Symfony/Component/Form/Extension/Validator/Constraints/FormValidator.php line 84
+```
+
+submitした時に、上記のNoticeがでるときがある
+
+カッコの位置が間違ってるのでなおす
+http://stackoverflow.com/questions/19299898/symfony2-form-trying-to-get-property-of-non-object-in