Как настроить отношения has_and_belongs_to_many с классом с псевдонимом и псевдонимом? - PullRequest
0 голосов
/ 27 апреля 2020

Я пытаюсь связать роли с группой (пользователей). Класс Role не существует, я использую выдержку (область видимости) класса Parameter. Я получил вдохновение от apidock.com, но не могу реализовать пример, используя область. Я устанавливаю отношения следующим образом:

##group.rb
  has_and_belongs_to_many :roles, :class_name => "Parameter", -> { where("parameters_list_id = ?", 13) }

##paramter.rb
  has_and_belongs_to_many :groups

Когда я добавляю лямбду для определения отношения, возникает следующая ошибка:

group.rb: 39: синтаксическая ошибка, неожиданная '\ n', ожидая =>

Можете ли вы помочь мне решить эту проблему?

Спасибо за вашу помощь.

1 Ответ

0 голосов
/ 27 апреля 2020

Изменен порядок параметров и отступ для ясности:

has_and_belongs_to_many :roles,
                        -> { where("parameters_list_id = ?", 13) },
                        :class_name => "Parameter"

Параметры всегда идут в конце списка параметров. Хеши иногда могут быть в середине, но тогда они должны быть ограничены {}. Квадратные скобки можно опустить только в том случае, если ha sh является последним параметром.

...