所有
我对Rails相对较新,需要一些帮助。
我试图遍历' Chorelists'其中包含用户'和'家务'家务和用户的关联是' has_many'而chorelists的那个是'且属于'其他两个。 Chorelists保存得很好(控制台承担了这一点),为用户和家务提供了正确的ID,但是我无法弄清楚在#savelist#display'中进行迭代的语法。图。
非常感谢任何帮助!
class SaveListController < ApplicationController
before_filter :authenticate_user!
def index
@chorelist = Chorelist.create(user_id: params[:user_id], chore_id: params[:chore_id])
redirect_to pick_chores_path
end
def display
@chorelist = Chorelist.all
@user = User.find(current_user.id)
end
end
你会在.each中添加什么来迭代当前用户的编排列表以获得实际的杂项名称?
答案 0 :(得分:1)
Chorelist
充当“加入”模式;其目的是加入User
和Chore
。
要获取给定Chores
的{{1}}列表,您需要在User
模型中设置has_many :through
关系。
User
通过此设置,class User
has_many :chorelists
has_many :chores, through: :chorelists
end
class Chorelist
belongs_to :user
belongs_to :chore
end
模型将获得可以迭代的User
集合。
chores