对 ruby for 循环的结果进行排序
Sorting outcomes from ruby for loop
我正在尝试从我的本地活动记录数据库中提取一些信息。 (这些是医生)。
最初在我看来,我有一个像这样的每个循环
<% @doctors.each do |doctor| %>
这很好,它列出了我需要的所有医生的名单。但是现在我需要拉这些人,而且还要根据他们的名字按字母顺序排列。
所以我的做法是这样的,
<% for last_name in @doctors.last_name.all(:order => "last_name") %>
然后我最终在代码中像这样调用它
<%= doctor.last_name %>
但是我一直收到错误消息。我得到的错误是..
undefined method `last_name' for #
在我的 rails 控制台中,我可以通过
找到医生的姓氏
doctor.last.last_name
所以,当我仍然能够在数据库中轻松找到它时,我不确定为什么该方法未定义。有人知道我错过了什么吗?
@doctors 集合将没有 last_name 属性,您需要执行以下操作:
@doctors = Doctor.all.order(:last_name)
然后
<% @doctors.each do |doctor| %>
<%= doctor.last_name %>
<% end %>
我正在尝试从我的本地活动记录数据库中提取一些信息。 (这些是医生)。
最初在我看来,我有一个像这样的每个循环
<% @doctors.each do |doctor| %>
这很好,它列出了我需要的所有医生的名单。但是现在我需要拉这些人,而且还要根据他们的名字按字母顺序排列。
所以我的做法是这样的,
<% for last_name in @doctors.last_name.all(:order => "last_name") %>
然后我最终在代码中像这样调用它
<%= doctor.last_name %>
但是我一直收到错误消息。我得到的错误是..
undefined method `last_name' for #
在我的 rails 控制台中,我可以通过
找到医生的姓氏doctor.last.last_name
所以,当我仍然能够在数据库中轻松找到它时,我不确定为什么该方法未定义。有人知道我错过了什么吗?
@doctors 集合将没有 last_name 属性,您需要执行以下操作:
@doctors = Doctor.all.order(:last_name)
然后
<% @doctors.each do |doctor| %>
<%= doctor.last_name %>
<% end %>