質問 > フロント機能 > 4系でマスターテーブルを追加する方法 |
フロント機能
スレッド表示 | 古いものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
jgjg |
投稿日時: 2020/8/22 9:36
対応状況: −−−
|
半人前 登録日: 2020/8/19 居住地: 投稿: 12 |
Re: 4系でマスターテーブルを追加する方法 t.kaneさん!!ありがとうございます!
t.kaneさんの手順通りに進めたところ、無事にマスタテーブル作成・管理画面表示ができました。 ありがとうございます! kenshiさん、t.kaneさん、ありがとうございました! (kenshiさんの記事も参考にさせていただきます!) |
t.kane |
投稿日時: 2020/8/20 16:29
対応状況: −−−
|
新米 登録日: 2020/8/17 居住地: 投稿: 5 |
Re: 4系でマスターテーブルを追加する方法 ちょうど私もマスターテーブルを追加する機会があったので返信させていただきます。
私はチケットの仕様可/使用済のパラメータを登録するようなテーブルを作成しました。 jgjgさんも参考にされている[https://yassu.jp/pukiwiki/index.php?EC-CUBE4%20%A5%DE%A5%B9%A5%BF%A5%C6%A1%BC%A5%D6%A5%EB%A4%CE%BA%EE%C0%AE] をもとに進めています。 ①まずテーブルを作成します。jgjgさんが作成した通りのクエリを走らせれば大丈夫です。 ②次にCustomize\Entity\Masterに目的のEntityを作成、Customize\Repository\Masterに同様にRepositoryを作成してください。 ※Entitiy、Repository以降のフォルダがない場合は新たに作成してください。 コードは以下の通りです。 Customize\Entity\Master\[Entity名].php
Customize\Repository\Master\[Repository名].php
③管理画面のマスターテーブル管理メニューで追加したマスターテーブルが表示されるように app/Customize/Form/Extension/MasterdataTypeExtension.phpをサイトの通りに作成します。 ※Form以降のフォルダがない場合は新たに作成してください。 ※作成し終わったら念のため以下のコマンドでキャッシュの削除をしておくと良いかもしれません。
参考になれば幸いです。 長々と失礼しました。 |
jgjg |
投稿日時: 2020/8/20 15:37
対応状況: −−−
|
半人前 登録日: 2020/8/19 居住地: 投稿: 12 |
Re: 4系でマスターテーブルを追加する方法 Kenshiさん、ご回答ありがとうございます!
①のようなSQLで直接テーブルを作成せず、 「bin/console make:entity XXX(作りたいEntityクラス名?)」コマンドを実行し、作成されたXXX.phpを編集して、このEntityをもとにテーブルを作成するということでしょうか? bin/console make:entity closedate とコマンドを流しましたが、 There are no commands defined in the “make” namespace.とエラーが出ました。 以下のサイトを参考に composer require doctrine maker とコマンドを流した後、 bin/console make:entity closedate をしましたが、結果は同じでした。 https://www.it-swarm.dev/ja/php/symfony%E3%81%AB%E3%81%AF%E3%80%8Cmake%E3%80%8D%E5%90%8D%E5%89%8D%E7%A9%BA%E9%96%93%E3%81%A7%E5%AE%9A%E7%BE%A9%E3%81%95%E3%82%8C%E3%81%9F%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%81%AF%E3%81%82%E3%82%8A%E3%81%BE%E3%81%9B%E3%82%93/836756568/ 調べながら進めていますが、わからなくなってしまいました… すみませんが、kenshiさん、またはどなたかご助言いただけると幸いです… |
kenshi |
投稿日時: 2020/8/20 11:52
対応状況: −−−
|
一人前 登録日: 2020/6/29 居住地: 投稿: 83 |
Re: 4系でマスターテーブルを追加する方法 マスターテーブルの追加方法は2種類あります。
参考にされているサイトの方法は 1.Entityクラスに項目を追加しコマンドでデータベースに反映する方法 私の書いている記事(途中)参考になれば幸いです。 https://leveliving.com/tec/php/ec-cube/develop/ Entityクラスに項目を追加しコマンドでデータベースに反映する方法 Entityはアノテーションで項目追加する情報を持ちます。 コマンドで作成可能です。 bin/console make:entity Entityが出来たら、②で行けると思います。 ③も同じようにフォルダ作っておけば大丈夫だと思います。 |
jgjg |
投稿日時: 2020/8/19 15:58
対応状況: 解決済
|
半人前 登録日: 2020/8/19 居住地: 投稿: 12 |
4系でマスターテーブルを追加する方法 [EC-Cube]4.0.4
[DB]MySQL 4系のマスターテーブルの追加手順について助けていただきたいです… 下記サイトを参考にさせていただいて、進めようと思っています。 https://yassu.jp/pukiwiki/index.php?EC-CUBE4%20%A5%DE%A5%B9%A5%BF%A5%C6%A1%BC%A5%D6%A5%EB%A4%CE%BA%EE%C0%AE 初歩的なところからわからないのですが(すみません)、この手順に従う場合、次のようにすればよいのでしょうか? ①DBに他マスタと同じ構造のテーブルを作成 CREATE TABLE `mtb_XXX` ( `id` smallint(5) unsigned NOT NULL, `name` varchar(255) NOT NULL, `sort_no` smallint(5) unsigned NOT NULL, `discriminator_type` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 (discriminator_typeは自動で値が入るのでしょうか…) ②参考サイトと全く同じコマンドを実行 bin/console eccube:generate:proxies bin/console doctrine:schema:update --dump-sql bin/console doctrine:schema:update --dump-sql --force ③参考サイトと全く同じPHPファイルを作成 app/Customize/Form/Extension/MasterdataTypeExtension.php (Customizeフォルダ以下にFormフォルダがないのですが、同じディレクトリになるようにMasterdataTypeExtension.phpを置けばよいでしょうか…? よろしくお願いいたします… 最終的には、以下の質問のRongoさんの回答の内容を再現したいです(注文ページのお届け日・またお届け日時の制限) https://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=21660&forum=10 |
スレッド表示 | 古いものから | 前のトピック | 次のトピック | トップ |