2

我在一个表单中有下拉列表和两个单选按钮。这是代码。我不知道如何在控制器中设置验证。当不从下拉列表和单选按钮之一中选择值时,我必须显示警告消息'请从下拉列表中选择值并选中一个单选按钮已提交。提交表单时如何在 ruby​​ on rails 中进行操作。

<%= form_tag :action => 'show' do %>
    <strong>Select device: </strong> <%= collection_select(:device, :id, @devices, :id, :name, options ={:prompt => "-Select a device"}) %>
    <br></br>
    <strong>Chose: </strong><%=  radio_button_tag :name,:time, false, :onclick => "this.parentNode.submit();"%>Time
    <%=  radio_button_tag :name,:graph%>Graph
    <% end %> 

在 device.rb 我设置以下但不显示任何消息。

 class Device < ActiveRecord::Base
   attr_accessible :name
   validates_presence_of :name
   has_many :properties

   def validate
     if name == 'None'
       errors.add_to_base("You must select a device name")
     end
   end
 end
4

1 回答 1

0

为什么不使用 validates_exclusion_of ?(或 Rails 3 中的等价物)

http://apidock.com/rails/v2.3.8/ActiveModel/Validations/ClassMethods/validates_exclusion_of

于 2013-02-27T09:48:17.167 回答