我有一个 sqlite3 数据库,其中包含预先存在的数据(名称、价格、url、img...)。当我尝试打印 objects.all() 中的值时,它返回
我的模特
class Product(models.Model):
name = models.CharField(max_length=200)
current_price = models.CharField(max_length=50)
place = models.CharField(max_length=50)
url = models.CharField(max_length=50)
img = models.CharField(max_length=50)
date_add = models.DateTimeField(default=timezone.now)
def __str__(self):
return self.name
我的网址:
path("database", views.show_db, name="show_db")
我的看法:
def show_db(request):
product_list = Product.objects.all()
return render(request, 'product_list.html', {'product_list' : product_list})
我的模板:
{% block content %}
{% for product in product_list %}
<li>
{{product.name}}
</li>
{% endfor %}
{% endblock %}
当我使用dbshell查看时,有一个scrape_product表(scrape是应用程序的名称):
CREATE TABLE IF NOT EXISTS "scrape_product"(
"id" integer NOT NULL PRIMARY KEY AUTOINCREMENT,
"name" varchar(200) NOT NULL,
"current_price" varchar(50) NOT NULL,
"place" varchar(50) NOT NULL,
"url" varchar(50) NOT NULL,
"img" varchar(50) NOT NULL,
"date_add" datetime NOT NULL
);
已解决:使用
重命名产品型号的sqlite表class Meta:
db_table = "scrape_product"