Rails错误未初始化常量Assignment::AssignmentsCourse in Has Many Throu



我得到错误"未初始化常量Assignment::AssignmentsCourse"。以下是我的型号:


分配.rb

class Assignment < ActiveRecord::Base
    has_many :assignmentsCourses
    has_many :courses, :through => :assignmentsCourses
    attr_accessible :name, :dateAssigned, :dateDue, :description, :weight, :category_tokens
    attr_reader :category_tokens
    def category_tokens=(ids)
        puts 'el ids: ', ids.split(",")
        self.courseIds = ids.split(",")
    end
end

课程.rb

class Course < ActiveRecord::Base
    has_and_belongs_to_many :assignments
end

作业课程.rb

class AssignmentCourse < ActiveRecord::Base
    belongs_to :assignment
    belongs_to :course
    attr_accessible :assignment_id, :course_id
end
has_many :assignmentsCourses

这个和你所有的字段都不应该是驼色大小写的——它不是ruby风格,它破坏了类加载。结尾也只能用复数形式,不能同时用两个词。在后台activerecord取消您提供的符号的模糊性,并执行类似于require的类加载。例如,如果您尝试require 'activeRecord',它将不起作用。Ruby使用下划线来派生多单词类名。

它应该是:has_many :assignment_courses

改变也有很多。您的访问器也不应该是驼色大小写的ruby_style_is_to_underscore。

最新更新