我是django前端网页开发的新手。
我有一个index.html
在我的模板文件夹,其中有两个缩略图注册或登录,然后点击它们会将你引导到signup.html
和login.html
。我已经在urls.py
中包含了它们各自的url。我被困在如何编辑我的views.py
上,这样我就可以记录用户为了执行引导而选择的选项。我在HTML代码中使用了超链接和缩略图。
目前我的views.py
如下所示:
from django.shortcuts import render
from .models import Customer
# Create your views here.
def index(request):
return render(request, 'newuser/index.html', {})
def login(request):
return render(request, 'newuser/login.html', {})
def signup(request):
return render(request, 'newuser/signup.html', {})`
和urls.py
:
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', views.index, name = 'index'),
url(r'^login$', views.login, name = 'login'),
url(r'^signup$', views.signup, name = 'signup'),
]
最后,这是我的index.html
:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title> Zucumber </title>
<link rel = "stylesheet" href = "//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
<link rel = "stylesheet" href = "//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/bootstrap-theme.min.css">
<link href="https://fonts.googleapis.com/css?family=PT+Sans" rel="stylesheet">
<link rel = "stylesheet" href = "{% static 'css/newuser.css' %}">
</head>
<body>
<div class = "page-header">
<h1> Welcome to My Site </h1>
</div>
<style>
.container {
margin-left: 300px;
margin-right: 300px;
}
</style>
<div class = "container">
<div class="row">
<div class="col-xs-6 col-md-3">
<a href="signup" class="thumbnail">
<img src="/static/img/signup.jpg" alt = "Sign Up as New User">
</a>
<h3> Sign Up </h3>
</div>
<div class="col-xs-6 col-md-3">
<a href="login" class="thumbnail">
<img src="/static/img/login.jpg" alt = "Log In as Existing User">
</a>
<h3> Log In </h3>
</div>
</div>
</div>
</body>
</html>
2条答案
按热度按时间bvjxkvbb1#
我不确定我是否完全理解你的要求,但是如果它只是在url中引导用户,那么你应该使用url模板标签,类似于
因为您在www.example.com中命名了URL,所以您可以在URL模板标签中通过名称引用它们,并且它将计算出完整的URL。urls.py you can reference them by name in the url template tag and it will figure out the full url.
例如,您将此登录名
使用以下
将导致它以url http://yoursite.com/login呈现
如果您实际上希望记录用户的点击次数,那么您可能需要设置一些模型来持久保存数据,然后以某种方式捕获视图中的点击
7kqas0il2#
请避免在Django中硬编码url。您可以在这里使用反向url匹配的强大功能。由于您已经为url指定了名称,您可以在
index.html
中添加container
,如下所示:这将有助于使用
urls.py
重定向到相应的url。接下来,你需要创建一个
forms
来显示在signup
和login
页面上,因为你已经从模型中导入了Customer
,我假设你想为它们创建signup
和login
。因此,您可以输入
forms.py
:在
SignUpForm
中,您还可以通过提供fields
作为Customer
模型的属性列表来指定您在注册时想要从用户那里获得的字段。在您的
login.html
中,您可以为LoginForm
提供一个渲染空间,如下所示:类似地,您的
signup.html
也将提供如下形式:最后编辑您的
login
和signup
视图,以如下方式存储数据:注意,我已经使用了
django.contrib.auth
的登录和注销功能,这可能不是您的应用程序所需要的,但想法非常相似。