2016-10-20 5 views
0

У меня есть 3 модели в основном установки:Loopback - Фильтр из GET на основе пользователя

Подрядчик (расширяет Пользовательская модель) Компания билетов

билетов belongsTo Подрядчик также Принадлежит компании Подрядчик hasMany Компании Компания hasMany Подрядчики

В основном Подрядчик может создать билет. Когда он это сделает, он перейдет в свою компанию ContractorId и CompanyID, в которой он работает.

То, что я пытаюсь достичь, - это получить все билеты, принадлежащие этому Подрядчику, когда он вошел в систему и запрашивает GET on/tickets.

Аналогично, если администратор Компании входит в систему, они должны иметь возможность получить все билеты, которые относятся к этой Компании.

Предполагаю, что я настрою несколько удаленных методов, но как мне сделать фильтрацию на основе ContractorId или компании, к которой прикреплен Подрядчик?

Thanks

ответ

1

Ваш вопрос несколько неоднозначный. Модели Loopback имеют метод find, который принимает фильтр как аргумент, используемый в предложении WHERE в общем SQL. https://docs.strongloop.com/display/public/LB/Querying+data

Если вы спрашивали о получить текущий идентификатор пользователя, увидит этот документ https://docs.strongloop.com/display/public/LB/Using+current+context идентификатор пользователя может быть извлеченным из экземпляра маркеров.

Прежде всего, я рекомендую вам следовать каждому руководству по началу работы с петлевым документом. Фильтрация модели не является особой задачей, поэтому похоже, что вы пропустили, чтобы прочитать важный документ-документ.

+0

Извините, может быть, это неправильно. Я знаю, как фильтровать, чтобы получить информацию, что я за то, как остановить подрядчиков, получающих другие билеты подрядчиков. – Brian

+0

Так, например, если мой идентификатор подрядчика был 1, я мог бы легко получить билеты, перейдя в/подрядчики/1/билеты. Однако, как я могу остановить пользователя от запроса/подрядчиков/2/билетов и получить билеты Подрядчика с ID 2. – Brian

+0

Прочтите это. В частности, часть ACL. (Контроль доступа) https://docs.strongloop.com/display/public/LB/Model+definition+JSON+file#ModeldefinitionJSONfile-Hiddenproperties – casamia