我正在嘗試創建User - Infos關聯,其中我的用戶has_many信息。Ruby on Rails - 獲取關聯數據
我試圖從用戶的索引表單上調用我的用戶信息。
通過對我的index.html.erb調用<%= user.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
而且我怎麼了? – ThalesMiguel 2012-01-17 19:29:19
好吧,如果你知道只有一個(在這種情況下是true),請調用'user.infos.first',或'user.infos.last'或'user.infos [0]'。不管從數組中抽出一個對象,最重要的是什麼。 Google「ruby array」在數組類中查找ruby文檔。 – Matt 2012-01-17 19:30:55
這看起來不像「平常」... 什麼是做我想做的最好的方式? 我如何把它放在對象中? 你真的是在幫我。謝謝! – ThalesMiguel 2012-01-17 19:36:24