
通过第一章和第三章创建级别目录
所需级别目录
所需代码
注意:所有的html页面都在templates文件夹中
views.py
from django.shortcuts import render,redirect
from django import http
from .models import *
# Create your views here.
def index(request):
books=Articles.objects.all() #查找所有书籍
print(books)
return render(request,"index.html",context={"books":books})
def login(request):
#数据提交给了login函数
#用请求的方式分别进行处理
if request.POST:
name=request.POST.get("uname")
pwd=request.POST.get("pwd")
users=Users.objects.filter(username=name,password=pwd)
if users:
return redirect("show/")
else:
return http.HttpResponse("用户名或密码错误")
return render(request,"login.html")
def zhuce(request):
if request.POST:
name = request.POST.get("name")
email = request.POST.get("email")
pwd = request.POST.get("pwd")
repwd = request.POST.get("repwd")
Users.objects.create(username=name,email=email,password=pwd)
if pwd==repwd:
return redirect("/")
else:
http.HttpResponse("两次密码输入不一致")
return render(request,"zhuce.html")
urls.py
注意:是应用的urls.py文件
from django.contrib import admin
from django.urls import path
from . import views
urlpatterns = [
path('', views.login),
path('show/', views.index),
path('zhuce/',views.zhuce),
]
models.py
from django.db import models
# Create your models here.
class Users(models.Model):
class Meta:
db_table="users" #描述原数据的内部类
id=models.AutoField(primary_key=True,db_column="id")
username = models.CharField(max_length=30)
email = models.CharField(max_length=50,null=True)
password = models.CharField(max_length=30,null=True)
def __str__(self):#魔法函数,用于打印对象时,显示对象中的某个信息
return self.email
class Articles(models.Model):
class Meta:
db_table="articles"
id=models.AutoField(primary_key=True,db_column="id")
title=models.CharField(max_length=50,null=True)
content=models.TextField()
create_date=models.DateTimeField(null=True,auto_now_add=True)
user_id=models.ForeignKey(Users,on_delete=models.CASCADE,db_column="user_id")
def __str__(self):
return self.title
base.html
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
head>
<body>
{% block content %}
{% endblock %}
<a href="/zhuce">注册a>
<a href="/">登陆a>
body>
html>
index.html
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
<link rel="stylesheet" href="/static/css/bootstrap.css">
<link rel="stylesheet" href="/static/js/bootstrap.js">
head>
<body>
<table class="table table-striped">
<h1 align="center">图书列表h1>
<tr>
<td>编号td>
<td >书名td>
<td >描述td>
<td >出版时间td>
<td class="glyphicon glyphicon-education">作者td>
tr>
{% for i in books %}
<tr>
<td>{{i.id}}td>
<td>{{i.title}}td>
<td>{{i.content|truncatewords:2}}td>
<td>{{i.create_date}}td>
<td>{{i.user_id.username}}td>
tr>
{% endfor %}
table>
body>
html>
login.html
{% extends "base.html" %}
{% block content %}
<form action="" method="post">
<input type="hidden" name="csrfmiddlewaretoken" value="{{csrf_token}}"/>
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">账号label>
<div class="col-sm-10">
<input type="text" class="form-control" id="inputEmail3" placeholder="请输入账号" name="uname">
div>
div>
<div class="form-group">
<label for="inputPassword3" class="col-sm-2 control-label">密码label>
<div class="col-sm-10">
<input type="password" class="form-control" id="inputPassword3" placeholder="请输入密码" name="pwd">
div>
div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-default">登陆button>
div>
div>
form>
{% endblock %}}
zhuce.html
{% extends "base.html" %}
{% block content %}
<form action="" method="post">
<input type="hidden" name="csrfmiddlewaretoken" value="{{csrf_token}}"/>
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">账号label>
<div class="col-sm-10">
<input type="text" class="form-control" id="inputEmail3" placeholder="请输入账号" name="name">
div>
div>
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">邮箱label>
<div class="col-sm-10">
<input type="Email" class="form-control" id="inputEmail3" placeholder="请输入邮箱" name="email">
div>
div>
<div class="form-group">
<label for="inputPassword3" class="col-sm-2 control-label">密码label>
<div class="col-sm-10">
<input type="password" class="form-control" id="inputPassword3" placeholder="请输入密码" name="pwd">
div>
div>
<div class="form-group">
<label for="inputPassword3" class="col-sm-2 control-label">确认密码label>
<div class="col-sm-10">
<input type="password" class="form-control" id="inputPassword3" placeholder="请确认密码" name="repwd">
div>
div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-default">注册button>
div>
div>
form>
{% endblock %}
结果
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)