用Django查询不起作用

时间:2018-08-11 13:32:46

标签: python django

我是Django和Python的新手。这是我在这里的第一篇文章!:

我一直试图在我用Django创建的某些网站上“打印”我用HeidySQL创建的数据库中的一些对象。

Django中的应用称为用户。因此127.0.0.1:8000 / users,在其中我在127.0.0.1:8000/users/login中有另一个页面可以正常加载。

我成功地将此数据库与Django进行了同步,甚至设法在Django shell中看到了一些行,这就是为什么我得出的结论是一切似乎都连接良好。

此login.html文件atm具有以下内容:

{% block content %}
<h1>{{ allcharacters_query }} </h1>

</body>

{% endblock %} 

问题是它不显示我的character_list的名称。

这是我的views.py:

from django.http import HttpResponse
from django.shortcuts import render
from users.models import Characters
from django.template.response import TemplateResponse

def index (request):
    return render(request,'users/home.html')

def return_charnames (request):
    allcharacters_query = Characters.objects.all()
    return render(request, 'users/login.html',{"allcharacters_query": 
    allcharacters_query})

这是我的urls.py文件:

from django.conf.urls import url, include, patterns
from .import views
from django.contrib.auth.views import login

urlpatterns = [
    url(r'^$', views.index,name='index'),
    url(r'^login/$',login,{'template_name': 'users/login.html' })

]

我真的不知道该如何解决。我已经从Django官方网站上阅读了很多文档,并观看了很多视频,但是,我仍然在这里。 谢谢大家!

3 个答案:

答案 0 :(得分:1)

如果要覆盖登录方法,则必须使用视图渲染而不是django的视图进行登录。

 url(r'^login/$',views.return_charnames) 

答案 1 :(得分:0)

替换

isClientProj()

作者:

{% for lista in characters_list %}

{% for lista in allcharacters_query %} 在您的模板中不存在。

并且该URL文件中没有URL调用视图characters_list

答案 2 :(得分:0)

您应该在urls.py中添加return_charnames,以便以正确的url显示html内容。