2012-06-27 58 views
0

我有以下形式的Rails應用程序:Rails的驗證不依賴於任何模型

<%= form_tag(:action => 'index') do %> 
    From: <%= text_field_tag(:from, params[:from]) %><br /> 
    To: <%= text_field_tag(:to, params[:to]) %><br /> 
    <%= submit_tag("Submit") %> 
<% end %> 

該款顯示器基於所提供的日期範圍的列表:從和:到PARAMS。

如何在不與任何模型或表格綁定的兩個文本框中進行存在和比較驗證?

謝謝! Corix

回答

1

您可以使用未持久保存到數據庫的模型。

class DateRange 
    include ActiveModel::Validations 

    attr_accessor :from, :to 
    validates_presence_of :from, :to 

    def persisted? 
    false 
    end 
end 

然後在控制器:

date_range = DateRange.new(:from => params[:from], :to => params[:to]) 
if date_range.valid? 
    #do stuff 
end 
+0

感謝您的建議克里斯。但是,它不適合我。我是否也需要更改表單代碼? – corix010