中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python中Django如何實現簡單注冊功能

發布時間:2021-05-06 09:53:19 來源:億速云 閱讀:205 作者:小新 欄目:開發技術

小編給大家分享一下Python中Django如何實現簡單注冊功能,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

python的數據類型有哪些?

python的數據類型:1. 數字類型,包括int(整型)、long(長整型)和float(浮點型)。2.字符串,分別是str類型和unicode類型。3.布爾型,Python布爾類型也是用于邏輯運算,有兩個值:True(真)和False(假)。4.列表,列表是Python中使用最頻繁的數據類型,集合中可以放任何數據類型。5. 元組,元組用”()”標識,內部元素用逗號隔開。6. 字典,字典是一種鍵值對的集合。7. 集合,集合是一個無序的、不重復的數據組合。

項目創建略,可參考Python Django Vue 項目創建。

目錄結構如下

Python中Django如何實現簡單注冊功能

編輯views.py

from django.shortcuts import render

# Create your views here.

from django.http import HttpResponse
from django.shortcuts import render
from common.DBHandle import DataBaseHandle
import time

def djangoHello(request):

 return HttpResponse('Hello Django!')

def index(request):

 return render(request,'index.html')

def login(request):
 print('login_func')

 usn = request.POST['username']
 pwd = request.POST['password']
 host = '127.0.0.1'
 username = 'username'
 password = 'password'
 database = 'dbname'
 port = 3306
 # 實例化 數據庫 連接
 DbHandle = DataBaseHandle(host, username, password, database, port)
 localTime = time.localtime(time.time())
 create_time = time.strftime("%Y-%m-%d %H:%M:%S", localTime)
 sql = "insert into user(username,password,create_time) values ('%s','%s','%s')" % (usn, pwd, create_time)
 DbHandle.insertDB(sql)
 DbHandle.closeDb()


 return render(request,'login.html')

接下來編輯urls.py

"""FirstWeb URL Configuration

The `urlpatterns` list routes URLs to views. For more information please see:
 https://docs.djangoproject.com/en/2.1/topics/http/urls/
Examples:
Function views
 1. Add an import: from my_app import views
 2. Add a URL to urlpatterns: path('', views.home, name='home')
Class-based views
 1. Add an import: from other_app.views import Home
 2. Add a URL to urlpatterns: path('', Home.as_view(), name='home')
Including another URLconf
 1. Import the include() function: from django.urls import include, path
 2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.urls import path
from fistWeb import views

urlpatterns = [
 path('admin/', admin.site.urls),
 path('hello/',views.djangoHello),
 path('index/',views.index),
 path('login/',views.login),
]

在應用下創建templates 文件夾

并創建html文件 index.html

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>FirstWeb</title>
</head>
<body>
 <h2>信息注冊</h2>
 <!-- action="/login/" 這里是 提交后訪問的路徑,因此 要在 urls 添加改路徑 -->
 <form action="/login/" method="post">
  {% csrf_token %}
 用戶名:<input type="text" name="username" id="usn"><br>
 密 碼:<input type="password" name="password" id="pwd"><br>
 <input type="submit" value="注冊">
 </form>

</body>
</html>

login.html

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>FirstWeb-登錄</title>
</head>
<body>
<h2>您好,您已注冊成功!</h2>
</body>
</html>

介紹一下添加的common文件

添加一個數據庫封裝的類。

# FileName : DBHandle.py
# Author : Adil
# DateTime : 2018/11/29 2:03 PM
# SoftWare : PyCharm
import pymysql
# username : adil
# password : helloyyj
class DataBaseHandle(object):
 ''' 定義一個 MySQL 操作類'''
 def __init__(self,host,username,password,database,port):
 '''初始化數據庫信息并創建數據庫連接'''
 # 下面的賦值其實可以省略,connect 時 直接使用形參即可
 self.host = host
 self.username = username
 self.password = password
 self.database = database
 self.port = port
 self.db = pymysql.connect(self.host,self.username,self.password,self.database,self.port,charset='utf8')
 # 這里 注釋連接的方法,是為了 實例化對象時,就創建連接。不許要單獨處理連接了。
 #
 # def connDataBase(self):
 # ''' 數據庫連接 '''
 #
 # self.db = pymysql.connect(self.host,self.username,self.password,self.port,self.database)
 #
 # # self.cursor = self.db.cursor()
 #
 # return self.db
 def insertDB(self,sql):
 ''' 插入數據庫操作 '''
 self.cursor = self.db.cursor()
 try:
  # 執行sql
  self.cursor.execute(sql)
  # tt = self.cursor.execute(sql) # 返回 插入數據 條數 可以根據 返回值 判定處理結果
  # print(tt)
  self.db.commit()
  print('執行成功')
 except:
  # 發生錯誤時回滾
  self.db.rollback()
  print('執行失敗')
 finally:
  self.cursor.close()
 def deleteDB(self,sql):
 ''' 操作數據庫數據刪除 '''
 self.cursor = self.db.cursor()

 try:
  # 執行sql
  self.cursor.execute(sql)
  # tt = self.cursor.execute(sql) # 返回 刪除數據 條數 可以根據 返回值 判定處理結果
  # print(tt)
  self.db.commit()
 except:
  # 發生錯誤時回滾
  self.db.rollback()
 finally:
  self.cursor.close()

 def updateDb(self,sql):
 ''' 更新數據庫操作 '''
 self.cursor = self.db.cursor()
 try:
  # 執行sql
  self.cursor.execute(sql)
  # tt = self.cursor.execute(sql) # 返回 更新數據 條數 可以根據 返回值 判定處理結果
  # print(tt)
  self.db.commit()
 except:
  # 發生錯誤時回滾
  self.db.rollback()
 finally:
  self.cursor.close()
 def selectDb(self,sql):
 ''' 數據庫查詢 '''
 self.cursor = self.db.cursor()
 try:
  self.cursor.execute(sql) # 返回 查詢數據 條數 可以根據 返回值 判定處理結果
  data = self.cursor.fetchall() # 返回所有記錄列表
  print(data)
  # 結果遍歷
  for row in data:
  sid = row[0]
  name = row[1]
  # 遍歷打印結果
  print('sid = %s, name = %s'%(sid,name))
 except:
  print('Error: unable to fecth data')
 finally:
  self.cursor.close()
 def closeDb(self):
 ''' 數據庫連接關閉 '''
 self.db.close()
if __name__ == '__main__':
 DbHandle = DataBaseHandle('127.0.0.1','username','password','dbname',3306)
 sql = "insert into JdwSpider(image_name,image_url,Spider_time) values ('%s','%s','%s')" % (
 '1', '2', '2018-12-04 15:25:21')
 DbHandle.insertDB(sql)
 # DbHandle.insertDB('insert into test(name) values ("%s")'%('FuHongXue'))
 # DbHandle.insertDB('insert into test(name) values ("%s")'%('FuHongXue'))
 # DbHandle.selectDb('select * from test')
 # DbHandle.updateDb('update test set name = "%s" where sid = "%d"' %('YeKai',22))
 # DbHandle.selectDb('select * from test')
 # DbHandle.insertDB('insert into test(name) values ("%s")'%('LiXunHuan'))
 # DbHandle.deleteDB('delete from test where sid > "%d"' %(25))
 # DbHandle.selectDb('select * from test')
 DbHandle.closeDb()

以上代碼實現了一個簡單的注冊頁面,并將注冊信息存放到數據庫表中。

啟動項目演示

Python中Django如何實現簡單注冊功能

打開瀏覽器輸入url:http://127.0.0.1:8000/index/

Python中Django如何實現簡單注冊功能

點擊注冊提交按鈕,頁面跳轉如下

Python中Django如何實現簡單注冊功能

查看數據庫表,可以看到新增的用戶信息。

Python中Django如何實現簡單注冊功能

以上是“Python中Django如何實現簡單注冊功能”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

登封市| 宣化县| 新绛县| 涟水县| 灌云县| 石柱| 鞍山市| 双柏县| 嘉禾县| 丰镇市| 旬邑县| 奈曼旗| 南阳市| 巴楚县| 大宁县| 鄱阳县| 建始县| 横山县| 乌审旗| 黄浦区| 阜宁县| 大丰市| 汤原县| 英德市| 桃江县| 界首市| 高淳县| 鄂托克前旗| 永年县| 望谟县| 商河县| 霍城县| 济宁市| 桃源县| 台东市| 红原县| 丰县| 甘孜| 黑龙江省| 怀来县| 通化市|