Я пытаюсь выбрать всех пользователей, имеющих действительный отдел.ActiveRecord: ошибка синтаксиса нескольких хэш-ситуаций
User
.joins(orders: [{ order_lines: :accounts}])
.where(users: {id: @user}, accounts: { "accounts.dept_id > ?": 0 })
Я получаю ошибку ниже,
syntax error, unexpected ':', expecting => ...accounts.dept_id > ?": 0 })
Я признателен за любую помощь вы можете предоставить
Пола Рихтера ниже правильно. Я просто хотел указать, что конкретная причина SyntaxError заключается в том, что при инициализации Hash двоеточие может использоваться только для ключей Symbol, например. '{foo: 1}' имеет ключ ': foo'. Для ключей, которые являются строками (или другими несимволами), вам нужно использовать «синтаксис толстой стрелки»: '{" foo bar "=> 2}'. Как я уже сказал, ответ Павла имеет решение вашей реальной проблемы. –