2013-01-11 43 views
0

在我的数据库,我有3场红宝石选择选项:if语句

name, cost, active 

我怎样才能选择(形式)仅显示值,其上活跃的领域为真(1)? 现在我有这样的代码:

= f.select :shipping_id, [["Select", "0"]] + @shippings.map{ |c| [c.name, c.id]}, {:required => true} 

如何映射,只有当活跃是真的吗?

注意!我必须做到这一点,只能在视线内!

+0

有些人就是这样的队友我了解到,在很多场合。只是不要气馁。但是你必须小心那些减号。如果你的问题得到太多的回应,堆栈溢出会阻止你提出问题。我会给你+1以从负号解除它)。看看[质量问题](http://blog.stackoverflow.com/2010/10/asking-better-questions/),虽然我没有看到你的任何错误。 – TheMouseMan

+0

@TheMouseMan非常感谢您! – byCoder

回答

1

尝试:

@shippings.select{|s| s.active}.map{|c| [c.name,c.id]} 
+0

对不起,你的意思是提示? –

+0

对不起...一切正常,只有一个错误 – byCoder

0
在控制器

@shippings = Shipping.where(:active => 1)