Django - 查询集不显示来自 db 的结果

Posted

技术标签:

【中文标题】Django - 查询集不显示来自 db 的结果【英文标题】:Django - Query set is not displaying the result from db 【发布时间】:2020-07-09 00:58:40 【问题描述】:

我有值存储在数据库中,但它没有显示查询集

模型.py

空查询集------ [28/Mar/2020 16:31:25] "GET /products/ HTTP/1.1" 200 34

【问题讨论】:

请使用`符号来代表你的代码。 请将您的代码发布到代码 sn-ps 中,以便我们可以复制并运行您的代码以查看问题所在。 【参考方案1】:

必须使用 Django 的 QuerySet API 创建对象,您不能使用数据库中已经存在的数据。

运行命令:

python manage.py shell

现在导入您的 Product 模型,就像您在 views.py 中所做的一样,并通过添加一个项目进行测试:

from products.models import Product
p = Product(name='test', price=25.5, stock=1, image_url='/abc')
p.save()

再次运行您的代码,您可以看到该对象现在在您的数据库中。

更多信息请查看QuerySet API

【讨论】:

【参考方案2】:

试试这个:

p = Product objects.all()
context = 'p': p

在模板中:

% for product in p %
 product.name 
 product.price 
% endfor %

让我知道你得到了什么。

【讨论】:

@Gowtham...我很高兴能帮上忙。您可以将其标记为答案。

以上是关于Django - 查询集不显示来自 db 的结果的主要内容,如果未能解决你的问题,请参考以下文章

自定义模板标记查询集不返回任何内容

来自 django.db.models.Value 转换为查询字符串时不包括引号

django - 内部连接查询集不起作用

Django defer() 和 only() 查询集不起作用?

jQuery UI 自动完成 - 输入与结果集不匹配时不显示结果

JPA:仅当结果集不为空时才缓存查询