Возможно ли разработать API в Django «TastyPie» таким образом, чтобы он не привязывал его напрямую к «одиночной» модели ORM Django? то есть вызов/api/xyz/будет извлекать данные из «a», «b» & «c» в один выход JSON. Если да, укажите, пожалуйста, в правильном направлении.TastyPie и Django ORM - насколько они тесно связаны?
ответ
tastypie более тесно связан с ОРМ, чем Джанго поршнями, но есть методы, которые можно определить в tastypie ресурса указать, как обрабатывать создание, чтение, обновление, удаление: http://readthedocs.org/docs/django-tastypie/en/latest/resources.html?highlight=put_list#obj-get
И вы бы просто не установите мета-поле запроса.
django-piston, с другой стороны, имеет более непосредственный первоначальный подход к определению одного или нескольких из этих методов. Ресурс все еще может быть привязан к модели, чтобы дать вам возможность отключить REST, но прежде всего о том, чтобы показать вам методы для определения пользовательской обработки.
tastypie немного более прочен в своем процессе и особенностях, но делает эту специфическую функцию немного менее очевидной.
Tastypie имеет ModelResource
и Resource
. Первый привязан к модели (которую вы можете отменить многие свои методы, как предложил jdi), и последнее, что вам нужно, я думаю. Пример Resource
here. Например, для источника данных Riak, в вашем случае это будет комбинация моделей django.