我正在使用has_and_belongs_to_many
但是它给了我错误,我假设因为它对我的模型和表名上的单数/复数感到困惑。
联系模式:
class Contact
has_and_belongs_to_many :social_statuses
end
SocialStatus模型:
class SocialStatus
has_and_belongs_to_many :contacts
end
迁移。
class CreateContactSocialStatuses < ActiveRecord::Migration
def change
create_table :contact_social_statuses, :id => false do |t|
t.references :contact
t.references :social_status
t.timestamps
end
end
end
我很确定问题是整个“social_status”模型是2个单词,虽然我不确定。
我尝试将模型更改为ContactsSocialStatuses,但这也给我一个问题。
由于
以下是我的迁移文件中的内容。如果我同时将class CreateContactsSocialStatuses
和create_table :contacts_social_statuses
同时保留为复数,当我尝试使用状态时,我会得到uninitialized constant CreateContactSocialStatuses
。
如果我将上面提到的这两行代码更改为单一的“联系人”部分(CreateContactSocialStatuses
),我会收到错误Mysql2::Error: Table 'organizer.contacts_social_statuses' doesn't exist