Лично я проверю javascript перед отправкой формы, затем еще раз проверю в контроллере непосредственно перед сохранением ().
Я считаю, что соглашение на самом деле не связано с моделью данныхэто не сохраненное значение (и имеет только одно допустимое условие, поэтому проверка не имеет смысла), но является условием отправки формы.Если бы это был столбец в таблице или он использовался для генерации или изменения сохраненного значения, то я, вероятно, сделал бы это на модели.