Я знаю, что варианты этого вопроса уже задавались, но я верю, что мой вопрос другой; -)
У меня есть 2 класса Ruby on Rails (с ассоциированными контроллерами, моделями и т. Д.). Это устройства и сообщения.
В представлении Devices index.html мне нужно сделать ссылку на новейшую запись сообщения.
<table>
<tr>
<th>Device Name</th>
<th>Checked</th>
</tr>
<% newestMessage = Message.find(:all, :order => "updated_at DESC", :limit => 1) %>
<% @devices.each do |device| %>
<tr>
<td><%= device.name %></td>
<td><%= newestMessage.updated_at %></td>
</tr>
<% end %>
</table>
(я считаю, что мне следует переместить логику к помощнику, но пока я держу ее настолько простой, насколько это возможно, пока я работаю)
Когда я захожу на этот blahblah.com/devices, я получаю ...
undefined method `updated_at' for #<Array:0x103f36c00>
Из-за линии,
<td><%= newestMessage.updated_at %></td>
Теперь я видел такие вопросы, которые предлагают добавить эквивалент следующее в messages_controller.rb,
attr_accessor :updated_at
Однако я пробовал это, и это не помогает. Кроме того, я не думаю, что это должно быть необходимо в любом случае, так как 'updated_at' является производным от базы данных, построен с помощью скаффолда и т. Д.
Если я просто напечатаю 'newestMessage', это, кажется, имеет разумное значение.
Мой вопрос: как мне получить доступ к полям в newestMessage, которые относятся к классу Message из устройства index.html.erb?
Заранее спасибо.