Ruby on rails 为什么这张地图不起作用?
我有一个Ruby on rails 为什么这张地图不起作用?,ruby-on-rails,ruby,Ruby On Rails,Ruby,我有一个associado的列表,我只想选择eh_proprietario返回true的那些。这是映射: @possiveis_associados = associados.map { |e| e if e.eh_proprietario} 如果我添加一个puts“{e.eh_proprietario}”我可以看到它在两个实例中返回true,但是在我看来,当我尝试使用这个集合时,我会得到一个错误,因为@possiveis\u associados为零 <%= m.select :ass
associado
的列表,我只想选择eh_proprietario
返回true
的那些。这是映射:
@possiveis_associados = associados.map { |e| e if e.eh_proprietario}
如果我添加一个puts“{e.eh_proprietario}”
我可以看到它在两个实例中返回true,但是在我看来,当我尝试使用这个集合时,我会得到一个错误,因为@possiveis\u associados
为零
<%= m.select :associado_id , options_from_collection_for_select(@possiveis_associados, :id, :razao_social), {include_blank: false}, {class: 'form-control'}%>
我在这里做错了什么?您要查找的是
选择,而不是地图。试一试
@possiveis_associados = associados.select { |e| e.eh_proprietario }
或者,更短
@possiveis_associados = associados.select(&:eh_proprietario)
您正在查找的是select
,而不是map
。试一试
@possiveis_associados = associados.select { |e| e.eh_proprietario }
或者,更短
@possiveis_associados = associados.select(&:eh_proprietario)
select可以与否定一起使用吗?像。选择(&:!eh_proprietario)
?使用拒绝
associados.reject(&:eh_proprietario)
选择可以与否定一起使用吗?像。选择(&:!eh_proprietario)
?使用拒绝
<代码>协会拒绝(&:eh_proprietario)