试图检查空关系表?

问题描述:

我还是对Ruby有点新,但基本上我想要做的是有一个名为“GA”的模型,另一个名为“课程”,我已经(希望)设置为has_and_belongs_to_many关系两个正确的,我试图使用下面的代码来运行每个GA,然后每个课程,并且如果该课程没有在其GA.GA列表中的GA,它会将当前的GA放入该课程中.ga清单:试图检查空关系表?

 <% @gas.each do |ga| %> 
     <% @courses.each do |course| %> 
      <% if course.ga.any? %> 
       course.ga << ga 

      <% end %> 

它不断抛出一个错误,这是GA一个未定义的方法。我也尝试过其他一些东西,比如'course.ga.exist?'等等。有任何想法吗?

+1

你是怎么建立关系?你能更新架构,活动记录吗? –

+0

迁移看起来像这样: class CreateJoinTableCourseGa gllwrnce

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 
+0

嗯,我想到的是,它确实帮助摆脱错误的我把它放在后,但现在看起来页面打印出来了:“course.gas gllwrnce