Django数据库数据无法显示问题排查与解决
Django模型无法读取数据库数据的排查与解决
问题现象
- 前端页面输出
<QuerySet []>和“not data”,Text模型无法读取数据库数据 - 此前手动录入的数据曾正常展示,后续突然失效
排查结果
数据库中存在两张引发冲突的表:
- 由SQLAlchemy创建的
Text表,存储着历史有效数据 - Django自动生成的空表
app1_text,当前Text模型实际关联的是这张空表
解决方案
- 重命名SQLAlchemy创建的
Text表,消除表名冲突 - 向Django生成的
app1_text表中添加数据,保证模型能读取到内容
相关代码片段
models.py
class Text(models.Model): id = models.CharField(max_length=255, primary_key=True, blank=False) text = models.TextField(blank=False) public = models.BooleanField()
views.py
def home(request): data = Text.objects.all() data = { 'data': data } return render(request, 'app1/index.html', data)
index.html
<div class="container p-4 g-col-6 w-50 "> {% if data %} {% for i in data %} <div class="row bg-dark text-white mt-3 rounded"> <p class="p-1 text-info">{{ i.text }}</p> </div> {% endfor %} {% else %} <p>not data</p> {% endif %} </div>
内容的提问来源于stack exchange,提问作者VANECK
相关产品推荐
相关产品推荐

