#sugarcrm #rest
Вопрос:
У меня есть 2 модуля: Котировки и наборы продуктов. Модуль котировок имеет отношение ProductBundles. Имя отношения — «product_bundle_quote».
В этой взаимосвязи Основным Модулем являются Котировки, а Связанным Модулем-Продуктовые наборы.
Я хочу получить соответствующую цитату, предоставленную ProductBundle. Как я могу добиться этого при моих HTTP-вызовах почтальону?
Сначала я попытался получить котировки, которые также включают в себя наборы продуктов, используя:
POST: {{sugarURL}}/rest/v10/Quotes/filter
Body:
{
"filter": [
{
"fields": "product_bundle_quote"
}
]
}
Это говорит о неизвестных полях поля.
Я просматриваю документы по API САХАРА, но пока безуспешно.
Спасибо,
Ответ №1:
GET {{sugarURL}}/rest/v10/ProductBundles/{{productbundleID}}/link/quotes
Это возвращает все связанные котировки указанного пакета продуктов в виде массива.
(Для отношения «один ко многим» обычно в возвращаемом массиве будет ровно одна запись или ее вообще не будет)
Перейдите в {{sugarURl}}/rest/v10/help
раздел -> > GET /<module>/:record/link/:link_name
в вашем веб-браузере для получения дополнительной информации. Обратите внимание, что все параметры являются необязательными.
Примечание:
/link/
api ожидает имя поля link
-type, а не имя отношения.
Например, связь product_bundles_quote
представлена полем ссылки quotes
в Пакетах продуктов и полем ссылки product_bundles
в кавычках. Проверьте метаданные соответствующего модуля, если вы не уверены в именах полей определенной связи.
То же самое верно и для fields
параметра, он ожидает имя поля ссылки. Также fields
не должно быть внутри filter
, а отдельный массив на том же уровне, filter
что и .