我是Rails的新手,无法设置关系以使用简单的参考ID。我有一个食谱表,有一个用于课程选择的字段,它是一个整数。该整数是指一个表,它只是所有不同课程的参考表。如何设置关系,以便在我调用recipe.course时返回课程名称而不是id号
答案 0 :(得分:1)
看一下has_many和belongs_to的关系: http://guides.rubyonrails.org/association_basics.html
您想要的关联是:
食谱belongs_to: :course
课程has_many: :recipes
然后确保生成迁移以将course_id
添加到Recipe。 (请记住使用Rails:约定优于配置。约定是使用model_id
作为关联列名。)
设置了这两个关联并正确迁移数据库后,recipe.course
将返回课程匹配recipe.course_id
的实例。 (然后您只需执行recipe.course.name
即可获得课程名称。)
您还可以在course.recipes
内获得与该课程相关的所有食谱的关系。