如果这是一个简单的问题,请原谅我。我花了一些时间搜索SO并且没有为这个问题提供明确答案。我也是铁杆新手。
我与其间的关联表有很多很多关系。关系是 锻炼有很多练习 锻炼属于许多锻炼。
我有两个表单,一个用于创建新的训练,另一个用于创建新练习。第3个表单将用于填充关联表“workout_exercises”。这将允许用户将练习添加到多个锻炼中。
我希望用户选择一个锻炼,在那里他们将看到一个按类别下拉过滤的练习列表(我已经工作了)。在表单提交上选中的复选框将获取为练习提交的ID。问题是此表格无法提供锻炼的ID。
我的模特看起来像这样
class Exercise < ActiveRecord::Base
belongs_to :category
belongs_to :workout_exercise
end
class Workout < ActiveRecord::Base
belongs_to :workout_exercise
end
class WorkoutExercise < ActiveRecord::Base
has_many :workouts
has_many :exercises
end
控制器动作看起来像这样
def exercises
@workout_exercise = WorkoutExercise.new
respond_to do |format|
format.js {
@workout = #?? I don't have the workout ID available from the request
@exercises = Exercise.where(category_id: params[:id]) #this is for the dropdown filter :id grabed on select change
}
end
end
我在想这个问题的可能选择可能是以某种方式使用嵌套路由?
提前感谢您的帮助!