Python 发送带有相关对象的JsonResponse
我想发送带有相关对象的JsonResponse。这是我的操场 我照你说的做Python 发送带有相关对象的JsonResponse,python,json,django,Python,Json,Django,我想发送带有相关对象的JsonResponse。这是我的操场 我照你说的做 def get_stocks(qty=9): return Stock.objects.values()[:9] # Returning stocks stocks = api_services.get_stocks() return JsonResponse(list(stocks), safe=False) 我的模特就像 class Sector(models.Model): name = models.
def get_stocks(qty=9):
return Stock.objects.values()[:9]
# Returning stocks
stocks = api_services.get_stocks()
return JsonResponse(list(stocks), safe=False)
我的模特就像
class Sector(models.Model):
name = models.CharField(max_length=200, null=True, blank=True)
original_name = models.CharField(max_length=200)
slug = models.CharField(max_length=200)
class Industry(models.Model):
name = models.CharField(max_length=200, null=True, blank=True)
original_name = models.CharField(max_length=200)
slug = models.CharField(max_length=200)
class Stock(models.Model):
name = models.CharField(max_length=200)
ticker = models.CharField(max_length=200, unique=True)
logo = models.CharField(max_length=200, null=True, blank=True)
website = models.CharField(max_length=200, null=True, blank=True)
sector = models.ForeignKey(Sector, on_delete=models.CASCADE, null=True)
industry = models.ForeignKey(Industry, on_delete=models.CASCADE, null=True)
如何获取包含相关对象的json?现在我明白了
0 Object { id: 1, name: "Tesla", ticker: "TSLA", … }
id 1
name "Tesla"
ticker "TSLA"
logo null
website "http://www.tesla.com"
sector_id 1
industry_id 1
我还需要获取部门和行业您需要在股票模型中查找给定ID的模型条目。你可以用你的方法来做。另一种选择是使用股票。 例如:
def get_stocks(qty=9):
stocks = Stock.objects.all()[:qty]
for stock in stocks:
try:
stock.sector = Sector.objects.get(id=stock.sector)
except Sector.DoesNotExist:
pass
try:
stock.industry = Industry.objects.get(id=stock.industry)
except Industry.DoesNotExist:
pass
return stocks