[EC-CUBE 4]商品情報の項目を追加する

商品を登録するとき、項目がーーーー、、、ということがあると思う。
そんなときに、カスタマイズで対応する方法。

ちなみに、そんな機能のプラグインもある模様。

今回は、商品情報に「メーカー名」を追加

Entityの拡張

ファイルを追加

<?php
// app/Customize/Entity/ProductTrait.php
namespace Customize\Entity;

use Doctrine\ORM\Mapping as ORM;
use Eccube\Annotation as Eccube;

/**
  * @Eccube\EntityExtension("Eccube\Entity\Product")
 */
trait ProductTrait
{
    /**
     * @ORM\Column(type="string", nullable=true)
     * @Eccube\FormAppend(
     *  auto_render=true,
     *  options={
     *   "required": false,
     *   "label":"メーカー"
     *  }
     * )
     */
    public $maker_name;
}

Proxyクラスを生成

コマンドラインでProxyクラスを生成

$ bin/console eccube:generate:proxies

app/proxy/entity/Product.php
が作成される。

データベースに反映

コマンドラインで定義をデータベースに反映する

## 念の為キャッシュをクリア
$ bin/console cache:clear --no-warmup

## 実行する SQL を確認
$ bin/console doctrine:schema:update --dump-sql

## SQL を実行
$ bin/console doctrine:schema:update --dump-sql --force

これだけで項目が追加できる。
かんたん。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*