2011-05-04 46 views
0

我在Rails的2个工作,和我的模型看起来像这样:默认在Formtastic形式没有得到选择

class Site < ActiveRecord::Base 
has_many :contacts 

def primary_contact 
    Contact.find :first, :conditions => {:site_id => self, 
             :primary_contact => true} 
end 

def primary_contact= new_primary_contact 
    contact = Contact.find(new_primary_contact) 
    contact.primary_contact = true 
    contact.save 
end 
end 

。注意:primary_contact虚拟属性在模型对其进行初始化,所以默认值应出席。

的形式,在我看来@site包含此输入:

<%= form.input :primary_contact, :as => :check_boxes, :collection => (Contact.find(:all, :conditions => {:site_id => @site.id}, :order => "first_name ASC")), :label => false, :include_blank => false %> 

这给了我一个复选框列表,已经检查了正确的默认复选框(即该网站的主要联系人被选中)。但是,我希望以单选按钮或选择下拉列表的形式显示,在这两种情况下,只需将:as => :check_boxes更改为:as => :select:as => :radio,则不会选择默认值。

我也试过指定收集只是:collection => @site.contacts,但同样的事情。

任何想法我做错了什么?

回答

0

哪个版本的Formtastic?听起来像它可能是一个错误。如果升级到Formtastic 1.2.4后仍然可以重复,请在Github上提出问题。