我有一个session controller
来管理登录/注销操作。这些操作与任何模型都没有关联。我想在此会话控制器中使用validates
辅助方法,以便我可以对:maximum, :minimum
使用username and password
等条件。但是如果没有模型,我该如何使用这些验证方法。此外,如果我使用这些帮助程序,则很容易与simple_form
的{{1}}登录页面集成,类似于我为error message
注册页面所做的操作。
如果无法使用上面的辅助方法,我可以选择哪种方法与simple_form轻松连接?
答案 0 :(得分:1)
可以在不创建模型的情况下使用验证,即继承自ActiveRecord::Base
的类。您可以拥有一个包含ActiveModel::Validations
的类并使用其方法。例如:
class Session
include ActiveModel::Validations
attr_accessor :username, :password
def initialize(user, pass)
@username = user
@password = pass
end
validates_length_of :username, minimum: 5
validates_length_of :password, minimum: 7
end
你这样使用:
session = Session.new("name", "secret")
session.valid? ## => false