Ruby on Rails - получение данных ассоциации

я пытаюсь создать ассоциацию «Пользователь - информация», где мой пользователь has_many Infos.

Я пытаюсь позвонить моя информация о пользователе в форме индекса от пользователей.

Вызывая <% = user.infos%> на моем index.html.erb (Users), он возвращает мне все данные из таблицы Infos, как это :

[#<Info id: 2, name: "Thales Miguel", date: "1989-07-14", area: "An\xC3\xA1lise de Sistemas", comment: "Analista j\xC3\xBAnior de sistemas.", user_id: 1, created_at: "2012-01-16 15:54:29", updated_at: "2012-01-16 15:54:29">]

Я предполагал, что, выполнив <% = user.infos.comment%> , он вернет мне «комментарий» от этого пользователя, но все, что я получил, это ошибка:

undefined method `comment' for #<ActiveRecord::Relation:0x3b8ebe8>

Что такое Я делаю неправильно?

infos_controller:

class InfosController < ApplicationController

  def create
    @user = User.find(params[:user_id])
    @info = @user.infos.create(params[:info])
    redirect_to user_path(@user)
  end

  def destroy
    @user = User.find(params[:user_id])
    @info = @user.infos.find(params[:id])
    @info.destroy
    redirect_to user_path(@user)
  end

  def new
    @user = User.new
    @user.build_info    
end

end

модель информации:

class Info < ActiveRecord::Base
  belongs_to :user
end

модель пользователя:

class User < ActiveRecord::Base
  validates :login,    :presence => true
  validates :password, :presence => true,
                       :length   => {:minimum => 5}

  has_many :infos, :dependent => :destroy

end
0
задан ThalesMiguel 17 January 2012 в 19:06
поделиться