У меня есть 2 модели - Учитель и Тема. Хотите подключить их через таблицу Join с именем Квалификация.Rails 3 - has_and_belongs_to_many
Похоже, я что-то неправильно:
class Teacher < ActiveRecord::Base
has_and_belongs_to_many :subjects, :join_table => "Qualification"
end
class Subject < ActiveRecord::Base
has_and_belongs_to_many :teachers, :join_table => "Qualification"
end
Моя миграция:
class CreateQualificationJoinTable < ActiveRecord::Migration
def change
create_table :qualification, :id => false do |t|
t.integer :subject_id
t.integer :teacher_id
end
add_index :qualification, :subject_id
add_index :qualification, :teacher_id
end
end
Когда я открываю рельсы консоли и печати, например
ruby-1.9.3-head :013 > Qualification
я получаю это:
NameError: uninitialized constant Qualification
from (irb):13
from /Users/serg/.rvm/gems/ruby-1.9.3-head/gems/railties-3.2.0/lib/rails/commands/console.rb:47:in `start'
from /Users/serg/.rvm/gems/ruby-1.9.3-head/gems/railties-3.2.0/lib/rails/commands/console.rb:8:in `start'
from /Users/serg/.rvm/gems/ruby-1.9.3-head/gems/railties-3.2.0/lib/rails/commands.rb:41:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'
Что не так?
Верь вам нужна модель под названием Квалификационные, переводящий к столу. –
@NekoNova: только если он ExiRe хочет что-то сделать с самой таблицей соединений, иначе пусть AR сделает грязную работу. См. Мой ответ ниже для прикрепленной ссылки. – jipiboily