バージョン選択

フォーラム

メニュー

オンライン状況

68 人のユーザが現在オンラインです。 (59 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 68
もっと...

サイト内検索

質問 > 管理機能 > 会員登録 項目追加 ラジオボタン

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
omotsu
投稿日時: 2020/7/2 19:18
対応状況: −−−
新米
登録日: 2020/7/2
居住地:
投稿: 2
会員登録 項目追加 ラジオボタン
[EC-CUBE] 4.0.3
[レンタルサーバ] XSERVER
[OS] Linux sv10390.xserver.jp 4.15.0-96-generic #97-Ubuntu SMP Wed Apr 1 03:25:46 UTC 2020 x86_64
[PHP] 7.3.16
[データベース] MySQL 5.7.29
[WEBサーバ] Apache
[導入プラグインの有無] 多少有り
[カスタマイズの有無] 多少有り
[現象]

会員登録ページにメルマガの受け取り選択用のラジオボタンを設置したく、こちらこちらの記事を参考に実装を行いましたが、
traitの実装、Proxyを生成、定義をデータベースに反映をそれぞれ行いましたが下記のエラーが出て期待するものを出力することができませんでした。
front.ERROR [N/A] [2809a78] [N/A] [Eccube\Log\Logger:log:66] - システムエラーが発生しました。 ["No route found for \"GET /html/user_data/assets/img/common/favicon.ico\" (from \"http://xs419385.xsrv.jp/shop/entry\")","/home/xs419385/xs419385.xsrv.jp/public_html/shop/vendor/symfony/http-kernel/EventListener/RouterListener.php",139,"#0 /home/xs419385/xs419385.xsrv.jp/public_html/shop/vendor/symfony/event-dispatcher/EventDispatcher.php(212): Symfony\\Component\\HttpKernel\\EventListener\\RouterListener->onKernelRequest(Object(Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent), 'kernel.request', Object(Symfony\\Component\\EventDispatcher\\ContainerAwareEventDispatcher))\n#1 /home/xs419385/xs419385.xsrv.jp/public_html/shop/vendor/symfony/event-dispatcher/EventDispatcher.php(44): Symfony\\Component\\EventDispatcher\\EventDispatcher->doDispatch(Array, 'kernel.request', Object(Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent))\n#2 /home/xs419385/xs419385.xsrv.jp/public_html/shop/vendor/symfony/http-kernel/HttpKernel.php(127): Symfony\\Component\\EventDispatcher\\EventDispatcher->dispatch('kernel.request', Object(Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent))\n#3 /home/xs419385/xs419385.xsrv.jp/public_html/shop/vendor/symfony/http-kernel/HttpKernel.php(68): Symfony\\Component\\HttpKernel\\HttpKernel->handleRaw(Object(Symfony\\Component\\HttpFoundation\\Request), 1)\n#4 /home/xs419385/xs419385.xsrv.jp/public_html/shop/vendor/symfony/http-kernel/Kernel.php(200): Symfony\\Component\\HttpKernel\\HttpKernel->handle(Object(Symfony\\Component\\HttpFoundation\\Request), 1, true)\n#5 /home/xs419385/xs419385.xsrv.jp/public_html/shop/index.php(76): Symfony\\Component\\HttpKernel\\Kernel->handle(Object(Symfony\\Component\\HttpFoundation\\Request))\n#6 {main}"] [GET, /shop/html/user_data/assets/img/common/favicon.ico, 121.44.64.143, http://xs419385.xsrv.jp/shop/entry, Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36]


traitの部分に欠陥があるとは思うんですが特定ができておりません。
教えていただければ幸いです。

下記にソースコードと実装を行った流れを記入します。
app/Customize/Entity/MailMagazineTrait.php
<?php

namespace Customize\Entity;

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

/**
 * @EntityExtension("Eccube\Entity\Customer")
 */
trait MailMagazineTrait
{
    /**
     * @var string|null
     * @ORM\Column(type="integer", length=1, nullable=false, options={"unsigned":true, "default":0})
     * @Eccube\Annotation\FormAppend(
     *     auto_render=false,
     *     type="\Symfony\Component\Form\Extension\Core\Type\ChoiceType;",
     *     options={
     *          "required": false,
     *          "label": "メールマガジン登録",
     *          "choices" : {
     *              "登録する" : 0,
     *              "登録しない" : 1,
     *           },
     *          "multiple" : false,
     *          "expanded" : true,
     *          
     *     })
     */
    private $mail_magazine;

    /**
     * @return integer
     */
    public function getMailMagazine()
    {
        return $this->mail_magazine;
    }

    /**
     * @param integer $mail_magazine
     * @return MailMagazineTrait
     */
    public function setMailMagazine($mail_magazine)
    {
        $this->mail_magazine = $mail_magazine;
        return $this;
    }
}


そしてproxyの生成
bin/console eccube:generate:proxies

キャッシュを一度クリア
bin/console cache:clear --no-warmup

DBに反映
bin/console eccube:schema:update –force –dump-sql

index.twigに下記を追加
<dl>
                            <dt>
                                {{ form_label(form.mailmagazine, 'メルマガ登録', { 'label_attr': { 'class': 'ec-label' }}) }}
                            </dt>
                            <dd>
                                <div class="ec-radio{{ has_errors(form.mailmagazine) ? ' error' }}">
                                    {{ form_widget(form.mailmagazine) }}
                                    {{ form_errors(form.mailmagazine) }}
                                </div>
                            </dd>
                        </dl>
umebius
投稿日時: 2020/7/7 0:19
対応状況: −−−
登録日: 2016/7/22
居住地:
投稿: 2085
Re: 会員登録 項目追加 ラジオボタン
参考にしていただいたようでありがとうございます。

テンプレートでform.mailmagazineとなっている箇所は
全てform.mail_magazineではないですか?


あと打ち間違いかもしれないですが「ChoiceType;」と記載されていますが。セミコロンはエラーになるのではないかと思います。
(確認していないので、ならなかったらすみません)

type="\Symfony\Component\Form\Extension\Core\Type\ChoiceType;",


----------------
EC-CUBEカスタマイズ・高速化・脆弱性対策・SEO ご相談ください。

2系・3系から4系へのバージョンアップ実績豊富

omotsu
投稿日時: 2020/8/17 22:30
対応状況: −−−
新米
登録日: 2020/7/2
居住地:
投稿: 2
Re: 会員登録 項目追加 ラジオボタン
返信がかなり遅くなってしまい、申し訳ございません。
この件に関しては、納期まで時間が迫っていたこともありプラグインで対応いたしました。
しかし、ご指摘頂いた内容は参考にさせていただきEC-CUBEの理解を深めていければと思います。
ありがとうございました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,711名です
総投稿数は109,948件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1638
8
red
1570
9
mcontact
1285
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.