Web interface development and test automation - Release Management System

1. Configure urls.py

from django.contrib import admin
from django.urls import path,re_path
from sign import views

= the urlpatterns [
  path ( 'ADMIN /', admin.site.urls),
  # re_path equal URL
  re_path (r'index / ', views.index), # login page
  re_path (' ^ $ ', views.index ), # login page
  re_path (r '^ accounts / login / $', views.index), # login page (forced Login Jump)
  re_path (r '^ login_action / $', views.login_action), # login process
  re_path (r ' ^ event_manage / $ ', views.event_manage) # Home
]

 

2. Configure view views.py

from django.shortcuts import render
from django.http import HttpResponse,HttpResponseRedirect
from django.contrib import auth
from django.contrib.auth.decorators import login_required
# Create your views here.

def index(request):
  # return HttpResponse("hello world!")
  return render(request, 'index.html')

def login_action(request):
  if request.method == 'POST':

    # The name attribute input value acquisition
    username = request.POST.get ( 'username', '')
    password = request.POST.get ( 'password', '')

    # Account password to verify the existence of the database, if there is no return None
    the User = auth.authenticate (username = username, password = password)
    IF IS not the User None:

      # Log
      auth.login (request, user)   

      # Save the session to the browser
        request.session [ 'user'] = username

      # After successful login goto
      response = HttpResponseRedirect ( '/ event_manage / ')

      Response return
    the else:
      return the render (Request, "index.html", { 'error': '! account number or password'})

@login_required
def event_manage(request):

  # 获取session
  username = request.session.get('user', '')
  return render(request,'event_manage.html',{'user':username})

 

3. Configuration Template templates

3.1 index.html

<! DOCTYPE HTML>
<HTML lang = "EN">
  <head>
    <Meta charset = "UTF-. 8">
    <title> conference management system </ title>
  </ head>
  <body>
    <h1 of> conference management system </ h1>
    <Method, form = "POST" Action = "/ login_action /">
      <the INPUT name = "username" of the type = "text" placeholder = "account"> <br>
      <the INPUT name = "password" of the type = "text" placeholder = "password"> <br>
      {{}} error error when <br> # 2 acquired when the account password error
      <button id = "submit" type = "submit"> Log </ the Button>
    < / form>
  </ body>
</ HTML>

3.2 event_manage.html

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8">
    <title>发布会管理</title>
  </head>
  <body>
    <h1>HI! {{user}} </h1>
    <h1>Welcome!</h1>
  </body>
</html>

 

4. Use the database login system, create Event, Guest table

4.1 Create a super administrator

  The display instruction

  e:\guest>python manage.py createsuperuser

4.2 Creating Event, Guest table

from django.db import models

# Create your models here.

# 发布会表
class Event(models.Model):
  name = models.CharField(max_length=100)
  limit = models.IntegerField
  status = models.BooleanField
  address = models.CharField(max_length=200)
  start_time = models.DateTimeField('events time')
  create_time = models.DateTimeField(auto_now=True)

  def __str__(self):
    return self.name

# 嘉宾表
class Guest(models.Model):
  event = models.ForeignKey(Event,on_delete=models.CASCADE)
  realname = models.CharField(max_length=64)
  phone = models.CharField(max_length=16)
  email = models.EmailField
  sign = models.BooleanField
  create_time = models.DateTimeField(auto_now=True)

  class Meta:

    # Model inner class
    unique_together = ( 'event', ' phone')

  def __str__(self):
    return self.realname

 

4.3 Configuration admin.py

from django.contrib import admin
from sign.models import Event,Guest
# Register your models here.
class EventAdmin(admin.ModelAdmin):
  list_display = ['id','name','status','address','start_time']
  search_fields = ['name']
  # list_filter = ['status']

class GuestAdmin(admin.ModelAdmin):
  list_display = ['realname','phone','email','sign','create_time','event']
  search_fields = ['realname','phone']
  # list_filter = ['sign']

admin.site.register(Event,EventAdmin)
admin.site.register(Guest,GuestAdmin)

 

4.4 Database Migration

e:\guest>python manage.py makemigrations sign

 

Guess you like

Origin www.cnblogs.com/hxe951222/p/11880383.html