バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > 管理機能 > 商品登録ページでカテゴリ選択を最低2つ選択するように制約をかけたい

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
natmor
投稿日時: 2021/1/4 16:42
対応状況: −−−
新米
登録日: 2020/11/23
居住地:
投稿: 10
商品登録ページでカテゴリ選択を最低2つ選択するように制約をかけたい
[EC-CUBE] 4.0.4
[レンタルサーバ] さくらレンタルサーバ
[PHP] 7.4.10 
[データベース] MySQL 5.7.32
[WEBサーバ] Apache
[ブラウザ] chrom
[導入プラグインの有無] あれば導入プラグインを記載
[カスタマイズの有無] あればカスタマイズ内容を記載(できるだけ具体的に)
[現象]
商品登録ページでカテゴリ選択を最低2つ選択するように制約をかけたいです。

symfony公式ドキュメントにminが設定できると書いてあるのですが
使い方がわかりません。
https://symfony.com/doc/3.4/reference/constraints/Choice.html#min

ProductType.phpのbuildFormに追記したいと思っています。

->add('Category', ChoiceType::class, [
'choice_label' => 'Name',
'multiple' => true,
'mapped' => false,
'expanded' => true,
'choices' => $this->categoryRepository->getList(null, true),
'choice_value' => function (Category $Category = null) {
return $Category ? $Category->getId() : null;
},

ご教授いただけるとうれしいです。
どうぞよろしくお願いいたします。
umebius
投稿日時: 2021/1/4 17:00
対応状況: −−−
登録日: 2016/7/22
居住地:
投稿: 2085
Re: 商品登録ページでカテゴリ選択を最低2つ選択するように制約をかけたい
このような形ですかね。
カテゴリのエラーは変な場所に出た記憶があるので、admin/Product/product.twigでform_errorsの場所移動してやる必要があるかもしれません。

->add('Category', ChoiceType::class, [
                'choice_label' => 'Name',
                'multiple' => true,
                'mapped' => false,
                'expanded' => true,
                'choices' => $this->categoryRepository->getList(null, true),
                'choice_value' => function (Category $Category = null) {
                    return $Category ? $Category->getId() : null;
                },

                 // ★追加する
                'constraints' => [
                  new Assert\Count([
                     'min' => 2,
                  ]),
                ],
            ])


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

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

natmor
投稿日時: 2021/1/5 21:55
対応状況: 解決済
新米
登録日: 2020/11/23
居住地:
投稿: 10
Re: 商品登録ページでカテゴリ選択を最低2つ選択するように制約をかけたい
> umebius様

ありがとうございます!思い通りに制約をかけることができました!
Assert\CountではなくAssert\Choiceでやろうとして躓いていました。
エラーメッセージの表示は大丈夫でした(^^)

umebius様の解説はどれも丁寧で分かりやすく、
これまでもブログ記事やこのフォーラムの投稿を拝見して大変お世話になっています。
ほんとうに神です!教えていただきありがとうございます✨
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

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

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1644
8
red
1570
9
mcontact
1289
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.