Как проверить, включено ли подчеркивание или нет - PullRequest
0 голосов
/ 18 июня 2019

Я хочу проверить, если "_" (подчеркивание) включено или нет в столбце "имя".Например, test_person в порядке, но testperson не в порядке.

То, что я уже пробовал: 1.

validates :name, inclusion: { in: %w(_), message: "Invalid name %{value}. Name must be firstname_familyname" }

Тогда я не смог сохранить любые имена, неважно с подчеркиванием или без него, напримерtest_person и testperson были отклонены и показали ошибку "Неверное имя ....".

2.

validates :name, format: { With: /\A[a-zA-Z]+_+[a-zA-Z]+\z/ }

Затем был показан ArgumentError.

Может кто-то разрешитья знаю, как подчеркивание может быть подтверждено?

1 Ответ

1 голос
/ 18 июня 2019

Это решение работает - https://guides.rubyonrails.org/active_record_validations.html#format

validates :name, format: { with: /\A[a-zA-Z]+_+[a-zA-Z]+\z/, message: "name must include underscore" }

Единственная проблема с вашим кодом - у вас есть With: с большой буквы W

Измените его с помощью строки выше with:

...