【发布时间】:2022-01-30 19:54:06
【问题描述】:
这是我的模特
class MenuItem(models.Model):
name = models.CharField(max_length=500, null=False)
description = models.CharField(max_length=500, null=True)
image_url = models.CharField(max_length=1000, null=True)
menu_category = models.ForeignKey(MenuCategory, on_delete=models.CASCADE)
def __str__(self):
return f'{self.name}'
class Venue(models.Model):
name = models.CharField(max_length=500, null=False)
def __str__(self):
return f'{self.name}'
class VenueMenu(models.Model):
venue = models.ForeignKey(Venue, null=False, on_delete=models.CASCADE)
menu_item = models.ManyToManyField(MenuItem, null=False)
这是我的序列化器
class MenuItemSerializer(serializers.ModelSerializer):
menu_category = MenuCategorySerializer()
class Meta:
model = MenuItem
fields = '__all__'
class VenueMenuSerializer(serializers.ModelSerializer):
menu_item = MenuItemSerializer(many=True)
class Meta:
model = VenueMenu
fields = '__all__'
这是我的观点
@api_view(['GET'])
def venue_menu_response_detail(request):
if request.GET.get('venue'):
venue_menu_list = VenueMenu.objects.filter(venue__name=request.GET.get('venue'))
serializer = VenueMenuSerializer(venue_menu_list, many=True)
return Response(serializer.data)
这是我的网址 http://127.0.0.1:8000/venue_menu_response_list?venue=venu_name
我想获取与该场地关联的所有场地和菜单项,此查询返回空结果,所以我认为问题出在我的查询中。
【问题讨论】:
-
查询看起来没问题,你确定你指向的是
urls.py中的正确视图吗? -
是的,当我根据场地__id 查询但在场地__name 上返回空时,查询正在运行
标签: python-3.x django django-rest-framework django-views django-serializer