Zajmuję się tworzeniem wtyczki magento2 (jestem trochę nowy w magento2) i napotkałem problem ze sprawdzaniem poprawności pola w pliku system.xml. Długo szukałem i nie znalazłem odpowiedzi. Dodałem nowe pole, ale muszę je zweryfikować za pomocą wyrażenia regularnego. Widziałem, że istnieje pewna domyślna walidacja, ale potrzebuję niestandardowej, czy jest jakiś sposób, aby dodać nową regułę walidacji do walidatora?
magento2
validation
system.xml
W. Gorczyca
źródło
źródło
Odpowiedzi:
Zasadniczo musisz zarejestrować niestandardową metodę sprawdzania poprawności, a następnie użyć jej dla pola w
system.xml
pliku.Zdefiniuj metodę walidacji:
I użyj go dla swojego pola w
system.xml
:Wyszukaj „validator.addMethod” w głównym kodzie Magento 2, jest tam wiele przykładów pokazujących bardziej złożone przypadki użycia.
źródło
Jak pisze @Wojtek Naruniec, musisz stworzyć własną metodę walidacji w pliku javascript i użyć jej w polu konfiguracji modułu w pliku system.xml .
Załóżmy, że twoje pole jest:
i chcesz sprawdzić długość pola (dokładnie 6 znaków).
Utwórz plik javascript,
na przykład:
następnie załaduj plik javascript na stronie konfiguracji administratora, aby wygenerować plik
Teraz możesz użyć walidatora dodając
<validate>
znacznik do<field>
znacznika pliku system.xml :źródło