如何在同一行中的一个对象上调用两个方法

时间:2015-08-03 19:22:00

标签: ruby-on-rails-4 methods

我正在使用Ruby on Rails 4,我的项目包含许多拥有许多员工的客户。我可以列出员工的名字并将其链接到员工的个人资料。

我想要做的就是这个逻辑:

<% @client.employees.each do |employee| %>
    <li class="list-group-item">
        <%= link_to employee.name, employee.surname, employee %>
    </li>
<% end %>

我想列出每个列表项的员工的第一个和最后一个(姓氏)名称,并将其作为一个链接。有没有办法在同一行中的同一个对象上调用两个不同的方法?在此先感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

这对你有用。

<% @client.employees.each do |employee| %>
    <li class="list-group-item">
        <%= link_to [employee.name, employee.surname].join(" "), employee %>
    </li>
<% end %>

更好的方法是在helper文件中添加一个方法来处理名称显示,就像这样

module EmployeesHelper
  def render_employee_name(employee)
    [employee.name, employee.surname].join(" ")
  end
end

并在视图中执行此操作

<% @client.employees.each do |employee| %>
    <li class="list-group-item">
        <%= link_to render_employee_name(employee), employee %>
    </li>
<% end %>