django框架搭建
一、搭建项目环境
1、创建项目
Pycharm创建项目
2、创建APP
创建login这个app:
python manage.py start login
3、设置时区和语言,在项目的settings.py文件中
LANGUAGE_CODE = 'zh-hans' # 默认中文
TIME_ZONE = 'Asia/Shanghai' # 修改时区
USE_TZ = False
4、启动服务器
Pycharm右上角绿色三角按钮
二、添加数据模型
1、数据库模型设计
login/models.py:
class User(models.Model):
'''创建表:user'''
gender = (
('male','男'),
('female','女')
)
username = models.CharField(max_length=200, unique=True) # username,必填,唯一,最长200字符
password = models.CharField(max_length=200) # password 必填,最长200字符
email = models.EmailField(unique=True) # email 唯一
sex = models.CharField(max_length=32, choices=gender, default='男') # 男或女,默认男
create_time = models.DateTimeField(auto_now_add=True)
def __str__(self): # 人性化显示对象信息
return self.username
class Meta: # 非必须,定义模型行为特性
ordering = ["-create_time"] # 对返回结果按create_time降序排列
verbose_name = '用户' # 给模型类取一个更可读的名字
verbose_name_pliral = '用户' # 模型的复数形式的名字,如果没有次属性,默认加s
2、配置数据库信息,settings.py:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'HOST': '127.0.0.1',
'USER': 'root',
'PASSWORD': '123456',
'NAME': 'anne_test',
'PORT': 3306
}
}
3、注册app
创建新的app要在settings.py中注册,在settings.py中:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'login.apps.LoginConfig',
]
4、生成迁移记录和数据表
login中的__init__.py:
import pymysql
pymysql.install_as_MySQLdb()
terminal终端输入:
python manage.py makemigrations
python manage.py migrate
三、admin后台管理
1、在admin中注册模块
admin是django提供给我们的一个后台管理模块,在settings.py中已经注册好了
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'login.apps.LoginConfig',
]
login/admin.py中:
from login import models
admin.site.register(models.User) # 将user模型注册到admin后台
2、创建超级管理员
pycharm终端执行命令:
python manage.py createsuperuser
根据提示输入对应信息
3、登录admin后台
浏览器访问:http://127.0.0.1:8000/admin/
四、url路由和视图
1、路由设计
urls.py:
from django.contrib import admin
from django.urls import path
from login import views
urlpatterns = [
path('admin/', admin.site.urls),
path('login/', views.login),
path('index/', views.index),
path('register/', views.register),
path('logout/', views.logout),
]
2、视图
views.py:
from django.shortcuts import render, redirect
def index(request):
return render(request,'login/index.html')
def login(request):
return render(request,'login/login.html')
def register(request):
return render(request,'login/register.html')
def logout(request):
return render(request,'login/logout.html')
3、创建html模板
templates/login文件下创建index.html、login.html、register.html、logout.html
例如index.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
这里是index
</body>
</html>
4、测试路由和视图
重启服务访问:http://127.0.0.1:8000/index/
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)