如何从嵌套资源访问ID?@peoples=@city.peoples
中没有id people_id。我收到错误Couldn't find People without an ID
。提前谢谢。
模型
class City < ActiveRecord::Base
has_many :peoples
end
class People < ActiveRecord::Base
belongs_to :city
end
控制器
def show
@city = City.find(session[:city_id])
@peoples=@city.peoples
@people=@peoples.find(params[:id])
end
路线
resources :city, :people
resources :cities do
resources :peoples
end
答案 0 :(得分:1)
您的错误消息是指模型Deal
,但您的示例是指City
和子People
。无论如何,People
(或@Peoples
)中的每个@city.peoples
实例都应将其ID属性设为id
- 而不是people_id
。
答案 1 :(得分:0)
我认为你的问题源于这一行
@people = @peoples.find(params[:id])
您确定要设置params[:id]
吗?你是如何链接到你的节目动作的?
另外我认为你不能在实例变量@peoples
上调用find,因为我认为它是一个数组,但我可能错了。