У меня есть User
модель, созданную Devise
и после создания, я добавил некоторые дополнительные атрибуты: username, age, year, gender
со своими собственными валидаций ...Как проверить некоторые модели атрибутов позже
Дело в том, я хочу одну страницу в зарегистрируйтесь как пользователь, который запросит у вас имя пользователя, адрес электронной почты и пароль.
И как только вы зарегистрировались, есть страница Profile
, где вы можете заполнить остальную информацию. Это будет, например, ваш telephone number
и first name
. Вы можете сказать это или нет. Но в случае, если вы что-то ставите, он будет проверять. Если он пуст, никакая редакция по этому атрибуту модели не будет выполнена, и тогда будет выполнена NO VALIDATION.
Обе страницы обрабатывают одну и ту же модель, но будут добавлять информацию в разные моменты.
Проблема возникает, когда вы пытаетесь зарегистрировать пользователя на странице регистрации. Rails будет жаловаться, потому что другие атрибуты, которые я не предоставил, проверяются моделью (когда я не хочу, чтобы модель проверяла их, по крайней мере для этой страницы).
Как я могу решить, что проверяется каждый момент?
Работал отлично! Очень легко и эффективно. –
Первая строка ничего не делает, поскольку это тавтология; подтвердите наличие ': first_name', если оно не равно nil, но если оно не равно nil, то оно уже имеет значение! Вторая строка не работает для отношений 'belongs_to'. – Chloe
Используйте 'принадлежит_to: other_model, необязательно: true' также для отношений. – Chloe