質問 > その他 > 入力必須項目を無くす方法 |
その他
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
ゲスト |
投稿日時: 2019/3/6 12:41
対応状況: 確認中
|
入力必須項目を無くす方法 入力必須項目を無くす方法をご教示頂きたく投稿させていただきました。
具体的には、新規会員登録ページの「お名前(カナ)必須、セイ、メイ」になります。 ECCUBE管理ページ>コンテンツ管理>ページ管理>会員登録(入力ページ)にて、下記ソースをコメントアウトにて非表示にしましたが、内部的に連携されているのか、入力がページが推移しないのです。 恐れ入りますが、よろしくお願い申し上げます。 <dl> <dt> {{ form_label(form.kana, 'お名前(カナ)', { 'label_attr': { 'class': 'ec-label' }}) }} </dt> <dd> <div class="ec-halfInput{{ has_errors(form.kana.kana01, form.kana.kana02) ? ' error'}}"> {{ form_widget(form.kana.kana01, { 'attr': { 'placeholder': 'セイ' }}) }} {{ form_widget(form.kana.kana02, { 'attr': { 'placeholder': 'メイ' }}) }} {{ form_errors(form.kana.kana01) }} {{ form_errors(form.kana.kana02) }} </div> </dd> </dl> |
|
umebius |
投稿日時: 2019/3/6 12:51
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: 入力必須項目を無くす方法 それでしたらEntryTypeというクラスにkanaという要素がaddされているためで、これを何らかの方法で効かなくしてやる必要があります。
->add('kana', KanaType::class, []) 下記ファイルで定義されています。 src/Eccube/Form/Type/Front/EntryType.php ちなみに ->add('kana', KanaType::class, [ 'required' => false, ]) と書き換えてやれば、twigテンプレートから取り除かなくても必須項目で無くなります。 ただカナがなくても会員登録は可能ですが その後の管理画面や決済などで問題が起きないかどうかは確認しておりません。
|
ゲスト |
投稿日時: 2019/3/6 15:58
対応状況: −−−
|
Re: 入力必須項目を無くす方法 umebius様
説明が至らず申し訳ございません。 src/Eccube/Form/Type/Front/EntryType.php で、 ->add('kana', KanaType::class, [ 'required' => false, ]) と、記述済みで、その後、コンテンツ管理>ページ管理>会員登録(入力ページ) にて、 {# <dl> <dt> {{ form_label(form.kana, 'お名前(カナ)', { 'label_attr': { 'class': 'ec-label' }}) }} </dt> <dd> <div class="ec-halfInput{{ has_errors(form.kana.kana01, form.kana.kana02) ? ' error'}}"> {{ form_widget(form.kana.kana01, { 'attr': { 'placeholder': 'セイ' }}) }} {{ form_widget(form.kana.kana02, { 'attr': { 'placeholder': 'メイ' }}) }} {{ form_errors(form.kana.kana01) }} {{ form_errors(form.kana.kana02) }} </div> </dd> </dl> #} と、コメントアウトし、表示を消しましたが、「同意する」ボタンを押しても、画面が推移しないのです。 赤字でエラーメッセージも出ていません。 宜しくお願い申し上げます。 |
|
umebius |
投稿日時: 2019/3/6 21:19
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: 入力必須項目を無くす方法 引用:
と、コメントアウトし、表示を消しましたが、「同意する」ボタンを押しても、画面が推移しないのです。 赤字でエラーメッセージも出ていません。 twigでkanaを取り除く(コメントアウト含む)場合は、 'required' => false,を指定するのではなく、 ->add('kana', KanaType::class, [])も取り除いてしまう必要があると思います。 逆にtwigでkanaを取り除かない場合は、'required' => false,を設定するだけで大丈夫だと思います。
|
umebius |
投稿日時: 2019/3/6 21:22
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: 入力必須項目を無くす方法 これはちょっと変な挙動で、カナのような複合フォームじゃなくて会社名などでしたらTwigから
取り除くだけで大丈夫なはずなのですが。 現状のソースでは上記のようになっているかと思います。 |
ゲスト |
投稿日時: 2019/3/7 9:41
対応状況: −−−
|
Re: 入力必須項目を無くす方法 umebius 様
上記ご教示の意味は小生の頭で理解が難しかったのです。 ご教示ありがとうございます。 結果的に、同じページ内の下記コードが関連して影響している事が分かりました。(いまいち謎ですが) <script src="//yubinbango.github.io/yubinbango/yubinbango.js" charset="UTF-8"></script> ↓↓↓ {# <script src="//yubinbango.github.io/yubinbango/yubinbango.js" charset="UTF-8"></script> #} と、郵便番号から住所を入れる機能を無効にしたら、画面が推移しました。 (その他のテストは行っていません。) |
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |