Мне нравятся новые отношения Sails в версии 0.10, но моя самая большая проблема в настоящее время — это поиск моделей по их ассоциациям. Если бы мне пришлось заполнить ассоциацию вручную, скажем, массивом идентификаторов, это было бы довольно просто. Однако я не могу найти правильный способ обработки поиска с ассоциацией Sails.
Я предоставил пример кода, который описывает две модели: Company и User. Компании могут иметь много Пользователей, а Пользователь может иметь только одну Компанию. Это довольно прямое отношение «один ко многим», и цель состоит в том, чтобы найти все компании, которые соответствуют идентификатору пользователя.
## Company.js
name:
type: 'string'
required: true
users:
collection: 'User'
via: 'company'
## User.js
company:
model: 'Company'
required: true
last_name:
type: 'string'
required: true
first_name:
type: 'string'
required: true
## Lookup Users by Company ID of '2'
User.find(where: company: 2).exec(console.log)
# Result
# [] - Array of users matching that company ID
## ---- The Problem / Question ----
## Lookup Companies by User ID '1'
Company.find(where: users: contains: 1).exec(console.log)
# Result
# Error (E_UNKNOWN) :: Encountered an unexpected error:
# error: column company.users does not exist
# Details:
# { error: 'E_UNKNOWN',
# summary: 'Encountered an unexpected error',
# status: 500,
# raw: 'error: column company.users does not exist' }
Я был бы признателен за любые мысли о том, как лучше всего справиться с этим поиском!