Je veux définir une valeur de longueur minimale pour le champ d'adresse de rue du côté administrateur
Je veux mettre min_text_length = 5
pour le Street Address
terrain dans le formulaire d'adresse du client
J'essaie de mettre à jour l'attribut mais ne fonctionne pas
public function upgrade(ModuleDataSetupInterface $setup, ModuleContextInterface $context)
{
if (version_compare($context->getVersion(), '1.0.1', '<')) {
$customerSetup = $this->customerSetup->create(['setup' => $setup]);
$customerSetup->addAttribute(
'customer_address',
'street',
[
'type' => 'static',
'label' => 'Street Address',
'input' => 'multiline',
'backend' => \Magento\Eav\Model\Entity\Attribute\Backend\DefaultBackend::class,
'sort_order' => 70,
'multiline_count' => 4,
'validate_rules' => '{"max_text_length":255,"min_text_length":5}',
'position' => 70,
]
);
}
}
Dans la base de données déjà définie {"max_text_length":255,"min_text_length":5}
mais la validation ne fonctionne pas
Remarque: - Côté administrateur et non côté frontal.
Réponses:
Vous pouvez le faire par script et mettre à jour la validation à l'intérieur. Vous devez changer
Vous pouvez le changer directement à partir de DB, vous devez le faire avec soin.
eav_attribute
et trouvez laattribute_code
rue et récupérezattribute_id
-la (généralement l'attribut_id est 28).customer_eav_attribute
et trouvez celaattribute_id
(28 dans mon cas). mettre à jour dans lavalidate_rules
colonne{"max_text_length":255,"min_text_length":5}
Maintenant c'est fait en admin
Remarque: Vous devez supprimer si cela se produit devant
la source
je ne sais pas si cela fonctionne
Exemple du prénom
supprimer cette validation
jusqu'ici
la source
Vous pouvez le faire depuis l'administrateur (Magento 2.3.3):
la source