У меня есть ролевая модель и модель разрешения.
Ролевая модель:
has_and_belongs_to_many :permissions
Модель разрешения:
has_and_belongs_to_many :roles
Миграция для создания таблицы permissions_roles:
class CreatePermissionsRoles < ActiveRecord::Migration
def self.up
create_table :permissions_roles, :id => false do |t|
t.integer :permission_id
t.integer :role_id
end
end
def self.down
drop_table :permissions_roles
end
end
Когда я пытаюсь назначить разрешения для роли, я получаю сообщение об ошибке «Недопустимое имя столбца 'id'". Дальнейшее изучение показывает, что запрос, который пытается выполнить:
INSERT INTO "permissions_roles" ("permission_id", "role_id", "id") VALUES (1, 1, 1)
Почему в мире он пытается добавить строку со значением id?