Django: Включить связанные модели в строку JSON? - PullRequest
1 голос
/ 28 октября 2010

Опираясь на этот вопрос , теперь у меня другая проблема. Учитывая это,

shipments = Shipment.objects.filter(filter).exclude(**exclude).order_by(order) \
    .annotate(num_bids=Count('bids'), min_bid=Min('bids__amount'), max_bid=Max('bids__amount')) \
    .select_related('pickup_address','dropoff_address','billing_address')

return HttpResponse(simplejson.dumps(list(shipments.values()), ensure_ascii=False, default=json_formatter), mimetype='application/json')

На самом деле он не включает pickup_address и т. Д. В JSON. Как я могу получить его, чтобы включить соответствующие поля?

1 Ответ

1 голос
/ 28 октября 2010

Вы можете использовать списки, полные диктовок доставки с заполненными связанными объектами. Этот API дает клиенту явное имя для каждого адреса.Позиционная система обозначений упрощает доставку по адресу выставления счета. Джоша Блока "Как разработать хороший API и почему он важен" стоит прочитать.

shipments = [{
    'shipment':s,
    'pickup_address': s.pickup_address, 
    'dropoff_address': s.dropoff_address, 
    'billing_address': s.billing_address,
} for s in shipments]

return HttpResponse(simplejson.dumps(shipments, ensure_ascii=False, default=json_formatter), mimetype='application/json')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...