Проверка Rails по определенному атрибуту на определенной странице - PullRequest
0 голосов
/ 26 июня 2019

Я изучаю возможность использования одного и того же контроллера для другой страницы контактов.Однако новая страница также нуждается в телефоне.

Так что сейчас у модели контактов есть следующее для проверки:

validates :name, email, :interest, presence: true

Нет проблем.Новая страница будет использовать интерес по умолчанию, который я установлю.Я действительно хочу требовать телефон только на определенной странице, хотя.Помимо выполнения проверки пользовательского интерфейса на наличие я бы хотел на самом деле проверить в модели.

Так есть ли чистый способ проверки одного атрибута в модели, которая смотрит на точку происхождения (то есть на страницу)?

1 Ответ

0 голосов
/ 26 июня 2019

Я думаю, что вам нужна опция :on (или контексты проверки).https://guides.rubyonrails.org/active_record_validations.html#on

Вы можете сделать что-то вроде:

validates :phone, presence: true, on: :some_conext

Затем на действие, которое обновляет атрибут

if user.save(context: :some_context)
  ....
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...