2010-07-26 47 views
2

我想有我select_tag默认为空白,但是当我使用的地图轨道 - 使用地图

<%= select_tag "assignment[client_id]", options_for_select(@data.map{|d| ["#{d.first_name} #{d.last_name}",d.id]}, " ") %> 

我知道你不能使用include_blank,你不能把“select_tag默认为空白“将其设置为空白。有任何想法吗 ?

谢谢,亚历克斯

回答

6

Rails提供了select helper方法,其中有一个:include_blank选项,使用像:

<%= select("assignment", "client_id", @data.map { |d| ["#{d.first_name} #{d.last_name}", d.id] }, { :include_blank => true }) %> 

更多信息,请参见Rails' FormOptionsHelper#select

PS:OT:也许加一个def name; "#{first_name} #{last_name}" end方法到你的模型:)

+0

感谢您的回复!即时通讯使用form_for所以需要使用select_tag任何其他想法? – Alex 2010-07-26 15:31:04

+0

afaik,那么你可以只做'f.select(:client_id,@data ...,:include_blank => true)',至少这就是我如何使用它的代码,不是这样吗? – lwe 2010-07-26 15:47:23

+0

让它工作,改变了我的表单的工作方式:) – Alex 2010-07-26 16:11:20