Django入门 整体流程跑通

Django学习笔记

一、Django整体流程跑通

1.1安装

shell 复制代码
pip install django     //安装
import django          //在python环境中导入django
django.get_version()  //获取版本号,如果能获取到,说明安装成功

Django目录结构

shell 复制代码
Python310
	-Scripts\django-admin.exe    //项目管理工具,创建django项目中的文件和文件夹
	-lib\site-packages\django    //框架源码

1.2 django常用命令

1)创建一个新项目

语法:

先进入某个指定的目录,项目文件将被创建在那个目录下。

shell 复制代码
django-admin startproject  <project_name>

示例:

shell 复制代码
django-admin startproject helloWorld    //创建一个名为helloWorld的新项目

2)创建一个app

语法:

shell 复制代码
django-admin startapp <app_name>

示例:

shell 复制代码
django-admin startapp app1              //新建一个名为app1的app

注意:

一个project下可以有多个app

每个app可以有独立的表结构、函数、HTML模板、css

3)在settings.py文件中注册应用名称

python 复制代码
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'app1.apps.App1Config'              #添加应用名称(appName.apps.className)
]

4)配置模版路径(settings.py文件)

pyhton 复制代码
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR,'templates')],     #配置模版路径
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

5)配置数据库(settings.py文件)

默认为sqlite,可以配置并更改成mysql

python 复制代码
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'helloWorld',
        'USER': 'root',
        'PASSWORD': 'xxxxxx',
        'HOST': '123.60.62.193',
        'PORT': '3306',

    }
}

6)配置允许所有主机访问(settings.py文件)

python 复制代码
ALLOWED_HOSTS = ['*']

7)在init.py中添加以下代码,用于django的orm模型操作mysql数据库

python 复制代码
import pymysql
pymysql.install_as_MySQLdb()

8)启动django

shell 复制代码
pyhton manage.py runserver      #只允许本机访问
shell 复制代码
 python manage.py runserver 0.0.0.0:8000   #允许所有主机访问,并配置端口号为8000

9)模型的迁移

将数据自带表迁移到数据库中

shell 复制代码
python manage.py makemigrations    #生成迁移文件 
python manage.py migrate           #进行迁移

迁移完后,在数据库中应该可以看到一些django的表

注意:

如果不执行迁移,那么在使用的时候,有些数据需要存到自带的表中,那么就会报错。

10)清空数据

shell 复制代码
 python manage.py flush

11)创建超级管理员

shell 复制代码
python manage.py createsuperuser

用户信息在auth_user表中

这时使用IP:8000/admin登入后台,就可以使用创建的超级管理员登入了

12)修改管理员密码

python 复制代码
python manage.py changepasswd <username>

13)django项目环境终端

python 复制代码
 python manage.py shell   #进入终端
 exit()                   #退出终端

14)数据库命令行

复制代码
 python manage.py dbshell

1.3项目目录介绍

复制代码
projectname
	|-manage.py     		 #项目的管理,启动项目、创建APP、数据管理
	|-projectname
		|-asgi.py   		 #接收网络请求
		|-wsgi.py   	     #接收网络请求
		|-urls.py   		 #url和函数的对应关系
		|-settings.py   	 #项目配置
	|-appname
		|-apps.py            #应用信息定义文件,在其中生成了AppConfig,该类用于定义应用名等数据 
		|-test.py            #测试代码文件
		|-admin.py           #管理站点模型的声明文件,默认为空
		|-migrations         #自动生成,生成迁移文件的
		|-views.py           #定义URL相关函数(路由规则)
		|-models.py          #添加模型层数据类文件,可用于操作数据库

1.4配置url和函数的对应关系

python 复制代码
from django.contrib import admin         #默认自动创建
from django.urls import path             #默认自动创建
from app1 import views                   #引入views,就是app目录下的views.py
urlpatterns = [
    #path('admin/', admin.site.urls),    #默认自动创建,先注释掉
    path('index/',views.index),          #创建对应关系,参数1为url路径,参数2为views中的函数
]

1.5配置views函数

python 复制代码
from django.shortcuts import render         #默认自动创建
from django.shortcuts import HttpResponse   #引入HttpResponse模块

# Create your views here.
def index(request):                         #定义一个名为index的函数,对应上一小节
    return HttpResponse('Hello World')      #返回字符串

1.6访问项目

经过以上配置,就可以通过浏览器看到Hello World字样了。

shell 复制代码
http://192.168.0.25:8000/index/             #这个index就是1.4中配置的那个url路径
相关推荐
蒸蒸yyyyzwd30 分钟前
后端学习笔记 day4
linux·笔记·学习
南境十里·墨染春水2 小时前
C++ 笔记 友元(面向对象)
开发语言·c++·笔记
笨笨饿2 小时前
20_Git 仓库使用手册 - 初学者指南
c语言·开发语言·嵌入式硬件·mcu·学习
cqbelt3 小时前
Python 并发编程实战学习笔记
笔记·python·学习
智算菩萨3 小时前
【论文复现】Applied Intelligence 2025:Auto-PU正例无标签学习的自动化实现与GPT-5.4辅助编程实战
论文阅读·python·gpt·学习·自动化·复现
老神在在0014 小时前
【Selenium 自动化精讲】浏览器弹窗与登录界面的本质区别 & 实操指南
javascript·学习·selenium·测试工具·自动化
·醉挽清风·4 小时前
学习笔记—Linux—信号阻塞&信号捕捉
linux·笔记·学习
Hello_Embed4 小时前
嵌入式上位机开发入门(四):TCP 编程 —— Client 端实现
网络·笔记·网络协议·tcp/ip·嵌入式
AnalogElectronic5 小时前
uniapp学习5,兼容微信小程序的俄罗斯方块游戏
学习·微信小程序·uni-app
知识分享小能手5 小时前
MongoDB入门学习教程,从入门到精通,MongoDB应用程序设计知识点梳理(9)
数据库·学习·mongodb