У меня есть пара моделей в моем приложении, которые включают расширенные проверки ActiveRecord для обеспечения качества данных, но, поскольку они требуют большого количества пользовательского ввода, я также позволяю пользователям быстро создавать записи, вводя только часть информации, обычно необходимой для полного создания.
Есть ли способ обойти ряд проверок, когда я делаю «быстрое создание»?
До этого момента я выполнял @project.save(:validate=>false)
и выполнял необходимые проверки вручную в действии контроллера, но это неуклюже и создает избыточный код. Как мне это сделать?
1 ответ
Следующий фрагмент заимствован из другого post и немного изменен:
class Project < ActiveRecord::Base
validates_uniqueness_of :project, :unless => :quick_create
attr_accessor :quick_create
end
Следующий фрагмент переходит в ваше представление
<%= submit_tag 'Submit', :name => 'project[quick_create]' %>
Вся логика в вашей модели, вы вообще не трогаете свой контроллер.
Похожие вопросы
Связанные вопросы
Новые вопросы
ruby-on-rails
Ruby on Rails - это полнофункциональная платформа веб-приложений с открытым исходным кодом, написанная на Ruby. Он следует популярной модели фреймворка MVC и известен своим подходом «соглашение поверх конфигурации» при разработке приложений.