-2

如何从嵌套资源访问ID?在@[email protected]中没有id people_id。我得到一个错误Couldn't find People without an ID。提前感谢您。如何从嵌套资源获取ids?

模型

class City < ActiveRecord::Base 
    has_many :peoples 
    end 

    class People < ActiveRecord::Base 
    belongs_to :city 
    end 

控制器

def show 
    @city = City.find(session[:city_id]) 
    @[email protected] 
    @[email protected](params[:id]) 
    end 

路线

resources :city, :people 
    resources :cities do 
    resources :peoples 
    end 

回答

1

你的错误信息是指模拟Deal,但你的例子是指City和儿童People。无论如何,@Peoples(或@city.peoples)中的每个People实例的ID属性都应为id - 而不是people_id

+0

对不起,这是复制粘贴错字。但事情是它说不能找到没有ID的人,这意味着在人的实例中没有ID,这使我认为这与路线有关 – katie

0

我觉得从这一行

@people = @peoples.find(params[:id]) 

你确定你设置params[:id]您的问题源于?你如何链接到你的表演动作?

另外我不认为你可以调用实例变量@peoples查找,因为我认为它是一个数组,但我可能是错的。