AnA*_*ice 6 ruby-on-rails ruby-on-rails-3
我有以下代码需要更新...
<% @users.each do |user| %>
<tr>
<td><%= link_to user.fname, user %></td>
</tr>
<% end %>
Run Code Online (Sandbox Code Playgroud)
我想学习如何更新它,而不是只显示fname,它显示fname + lname
所以对于詹姆斯·邦德这样的唱片,它会显示詹姆斯·邦德并将其链接到Rails中的用户.
谢谢
And*_*Vit 18
您可以在ERB中加入字符串:
<%= link_to user.fname + " " + user.lname, user %>
<!-- or, slightly better: avoids problems with nil values -->
<%= link_to "#{user.fname} #{user.lname}", user %>
<!-- or, even better -->
<%= link_to [user.fname, user.lname].join(" "), user %>
Run Code Online (Sandbox Code Playgroud)
或者,您可以将丑陋的逻辑移动到辅助方法中,例如在app/helpers/users_helper.rb中:
module UsersHelper
def full_name(user)
[user.fname, user.lname].join(" ")
end
end
<%= link_to full_name(user), user %>
Run Code Online (Sandbox Code Playgroud)
或者,(这就是我要做的)你可以在模型中放置一个full_name方法:
class User < ActiveRecord::Base
def full_name
[fname, lname].join(" ")
end
end
<%= link_to user.full_name, user %>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5278 次 |
| 最近记录: |