У меня есть пользовательская модель и 3 подкласса, использующие наследование одной таблицы. Владелец, Клиент и Администратор. (Столбец типа был добавлен в пользовательскую таблицу).
#user.rb
class User < ApplicationRecord
devise :database_authenticatable,:registerable,
:jwt_authenticatable,
jwt_revocation_strategy: JWTBlacklist
end
#client.rb
class Client < User
end
#admin.rb
class Admin < User
end
#owner.rb
class Owner < User
has_many :clubs
end
#club.rb
class Club < ApplicationRecord
belongs_to :owner
has_one :address
has_many :courts
end
Модель Владелец имеет отношение has_many к модели Club. Когда я захожу в приложение как владелец, а затем пытаюсь добавить новый клуб. Использование
@club= current_user.clubs.create!(club_params)
Я получаю следующую ошибку.
ActiveRecord :: StatementInvalid (SQLite3 :: SQLException: такой таблицы нет: main.owners: INSERT INTO "clubs" ("owner_id", "creation_at", "updated_at") ЗНАЧЕНИЯ (?,?,?)):
Есть ли способ заставить его искать в таблице пользователей?