Jim*_*mmy 3 c# translation ruby-on-rails
我试图根据条件获取对象的集合.现在通常在C#中我会做这样的事情
employeesCollection.Where(emp => emp.Name == "john");
Run Code Online (Sandbox Code Playgroud)
我如何在Ruby on Rails中做类似的事情(我试图将一组对象映射到一个选择,但我只想映射符合条件的某些对象.
我当前ruby on rails代码看起来像这样
<%= select( 'page', 'id', @post.pages.map {|page| [page.title, page.id]}) %>
Run Code Online (Sandbox Code Playgroud)
我想为页面属性添加一个条件
有人可以帮忙吗?
你可以select在之前扔一块map:
>> [1,2,3,4,5].select { |x| x.odd? }.map{ |x| x*x }
=> [1, 9, 25]
Run Code Online (Sandbox Code Playgroud)
select的同义词是find_all.
正如您可能猜到的,select在Ruby中大致相当于LINQ Where.选择一个块,并将您的每个元素Enumerable传递给该块; 当块返回true(非假,非零)时,则该元素被select编辑.
反义词select是reject. reject当你的选择是否定的时候首选:也就是说,
ary.select {|x| x != 'foo'}
Run Code Online (Sandbox Code Playgroud)
不太优选
ary.reject {|x| x == 'foo'}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
335 次 |
| 最近记录: |