Python 为什么我仍然得到'DeferredAttribute'对象没有属性'objects'?
经过几天的搜索,我仍然无法克服这个障碍。我只是想打印一个卖家的描述列表作为一个视图。这是我的工作内容 models.py:Python 为什么我仍然得到'DeferredAttribute'对象没有属性'objects'?,python,django,Python,Django,经过几天的搜索,我仍然无法克服这个障碍。我只是想打印一个卖家的描述列表作为一个视图。这是我的工作内容 models.py: from django.db import models class Sellers(models.Model): index = models.BigIntegerField(blank=True, null=False) seller = models.TextField(db_column='SELLER', blank=False, null=F
from django.db import models
class Sellers(models.Model):
index = models.BigIntegerField(blank=True, null=False)
seller = models.TextField(db_column='SELLER', blank=False, null=False,
primary_key=True)
block = models.TextField(db_column='BLOCK', blank=False, null=False)
street = models.TextField(db_column='STREET', blank=False, null=False)
space = models.TextField(db_column='SPACE', blank=False, null=False)
description = models.TextField(db_column='DESCRIPTION', blank=True, null=True)
document_with_idx = models.TextField(blank=False, null=False)
document_with_weights = models.TextField(blank=False, null=False)
class Meta:
managed = False
db_table = 'Sellers'
def __str__(self):
return self.index
"
views.py:
from django.http import HttpResponse
from search.models import Sellers
def search(request):
output = Sellers.description.objects.all()
return HttpResponse(output)
"
任何方向都将不胜感激,我觉得我已经阅读了所有与此相关的帖子。我想是时候发布一个关于我的确切设置的问题了。谢谢 Sellers.description指的是字段,因此您基本上得到的是TextField对象,而不是对象的一个描述,因为Sellers是一个类,而不是Sellers对象。您可以通过以下方式获得描述值:
from django.http import JsonResponse
from search.models import Sellers
def search(request):
output = Sellers.objects.values_list('description', flat=True)
return JsonResponse({'data': list(output)})
此外,您不能简单地将其包装到HttpResponse中,因为它需要一个类似字符串/字节的对象。例如,您可以使用JsonResponse对其进行JSON编码。Sellers.description是一个属性,它不是一个单字段。嘿,感谢您的快速回复。我现在得到以下错误:异常类型:编程错误在/Exception值:关系搜索\u sellers不存在第1行:选择搜索\u sellers.DESCRIPTION FROM search\u sellers知道为什么会出现这种情况吗?@nopayneogain:您是否进行了迁移并迁移了数据库。看起来您还没有让Django在数据库端构造表。看,你的新问题是一个单独的问题,而不是后续评论。请适当地张贴。。。记住接受和/或投票表决这个答案。