我对Ruby仍然有点新鲜,但基本上我要做的是有一个名为'GA'的模型和另一个名为'Course'的模型,我希望它(希望)设置为has_and_belongs_to_many之间的关系两个正确,我正在尝试使用以下代码来运行每个GA,然后是每个课程,如果课程在其课程列表中没有GA,则会将当前的GA放入所述课程中。 ga list:
<% @gas.each do |ga| %>
<% @courses.each do |course| %>
<% if course.ga.any? %>
course.ga << ga
<% end %>
它不断抛出错误,这是GA的未定义方法。我还尝试了一些其他的东西,比如'course.ga.exist?'等等。有什么想法吗?
答案 0 :(得分:0)
has_and_belongs_to_many
通常与多个关联名称一起使用。我希望你的模型看起来像这样:
# course.rb
class Course < ActiveRecord::Base
has_and_belongs_to_many :gas
# ga.rb
class Ga < ActiveRecord::Base
has_and_belongs_to_many :courses
然后你的例子也应该使用复数名称(如:将一个ga移动到气体列表中):
course.gas << ga