質問 > 管理機能 > 会員登録時に姓だけ入力必須にしたい |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
gangelion |
投稿日時: 2021/2/1 11:56
対応状況: −−−
|
半人前 登録日: 2020/11/21 居住地: 投稿: 11 |
会員登録時に姓だけ入力必須にしたい ▼テンプレート
[EC-CUBE] 4系 [実現したいこと] 新規会員登録時に姓だけ入力必須にして名は任意にしたいです。 https://umebius.com/eccube/eccube4-entry_company_name_required/ こちらのサイトを参考にしてsrc/Eccube/Form/Type/Front/EntryType.phpを以下のように変更しました。 ``` public function buildForm(FormBuilderInterface $builder, array $options) { $builder ->add('name', NameType::class, [ 'required' => false, // ここをfalseに変更 ]) ``` ですが姓も名も必須のままでした。 src/Eccube/Form/Type/NameType.phpを直接いじれば必須を解除することができたのですが、このようなやり方で問題ないでしょうか? ``` public function buildForm(FormBuilderInterface $builder, array $options) { $options['lastname_options']['required'] = $options['required']; $options['firstname_options']['required'] = false; // required の場合は NotBlank も追加する if ($options['required']) { $options['lastname_options']['constraints'] = array_merge([ new Assert\NotBlank(), ], $options['lastname_options']['constraints']); // $options['firstname_options']['constraints'] = array_merge([ // new Assert\NotBlank(), // ], $options['firstname_options']['constraints']); } ``` ご回答よろしくお願いいたします。 |
gangelion |
投稿日時: 2021/2/1 14:30
対応状況: −−−
|
半人前 登録日: 2020/11/21 居住地: 投稿: 11 |
Re: 会員登録時に姓だけ入力必須にしたい 自己解決しました。
管理画面側はCustomerType.phpを、新規会員登録側はEntryType.phpをそれぞれ'required' => false;に変更しまして必須を解除できました。 |
joolensato |
投稿日時: 2021/2/1 14:31
対応状況: −−−
|
常連 登録日: 2019/3/20 居住地: 投稿: 51 |
Re: 会員登録時に姓だけ入力必須にしたい dtb_customerのname02(名)がnot null制約かかっていた気がします。
|
gangelion |
投稿日時: 2021/2/1 16:28
対応状況: −−−
|
半人前 登録日: 2020/11/21 居住地: 投稿: 11 |
Re: 会員登録時に姓だけ入力必須にしたい その通りですね。
こちらどのようにしたらよろしいでしょうか? こちらを参考に以下のようにしてみましたがうまくいきませんでした。 https://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=22568&forum=10 ``` ->add('name', NameType::class, [ 'required' => false, 'empty_data' => '' ]) ``` 直接mysqlに入って設定するしかないのでしょうか? |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |