django快速创建

django安装

看以使用anaconda 进入虚拟环境后,用 pip install django来进行安装
安装后会生成两个东西,一个是django-admin.exe,一个是第三方包

环境目录

python环境路径
	/ ...
	/ scripts
			/ django-admin.exe	  //用于帮助我们操作django项目
	/ lib
			/ ... 
			/ site-package		//第三方模块
					/ ...
					/ pytorch
					/ ...
					/ django		
					/ ...
	/ python.exe
	/ ...

django创建

打开anaconda或者别的终端工具,cd到要创建项目的文件目录下

创建语句

创建一个新的项目: django-admin startproject [NAME]
在这里插入图片描述
就会在当前文件夹创建一个django_pro文件

然后cd进入到django_pro的目录下
该目录下会有一个同名文件夹 和 manage.py
在这里插入图片描述

同名文件夹下有下列文件
在这里插入图片描述

项目结构

结构如下:

django_pro
---django_pro
	 ---__init__.py   		//表示该文件夹是一个包
	 ---asgi.py				// 接收网络请求
	 ---settings.py			// 注册app,数据库连接,配置文件
 	 ---urls.py					//  管理url跳转
 	 ---wsgi.py				// 接收网络请求
---manage.py

App创建

创建一个新的应用(不是一个软件那种App,相当于实现该项目的一部分功能):

创建语句

在命令行界面,当前django_pro项目文件夹下输入
python manage.py startapp [APP_NAME]

在这里插入图片描述
目录下会出现一个新的[APP_NAME]文件夹,这里是App
在这里插入图片描述
内部文件如下
在这里插入图片描述

注册app

创建app后,还需要在settings.py里注册app,才能使用
先找到[APP_NAME]\apps.py,在之前用语句创建app时会在apps.py自动生成该函数
在这里插入图片描述

在这里插入图片描述

找到settings.py,在列表变量INSTALLED_APPS中,添加对应的函数路径
[APP_NAME].apps.[APP_NAME]Config
在这里插入图片描述

然后一般会在新应用文件夹下创建一个template文件夹用于存放html页面

整个django的大概框架与使用:

django_pro
---django_pro
	 ---__init__.py   		// 表示该文件夹是一个包
	 ---asgi.py				// 接收网络请求,基本不动
	 ---settings.py			// --常用: 注册app,数据库连接,配置文件
 	 ---urls.py				// --常用: 管理url跳转
 	 ---wsgi.py				// 接收网络请求,基本不动
---App
	 ---migrations  		// 数据库变更记录,自动生成文件,基本不动
	 ---__init__.py			// 表示该文件夹是个包
	 --- admin.py			// django提供的后台管理,基本不动
	 ---apps.py				// app启动相关,基本不动
	 ---models.py			// --常用: 对数据库进行操作
	 ---tests.py			// 用于单元测试
	 ---views.py			// --常用:攥写视图函数
---manage.py

django编写

urls.py 与 views.py

urls.py: 管理url请求与响应
views.py: 编写响应函数

在网页应用中,页面跳转或请求都需要用到url,urls.py是专门管理url的
使用:在urls.py里找到urlpatterns,添加一行path(’ ', ),
对于path(‘x’, y)
x是url
y是对应views.py 里的函数
在这里插入图片描述

在这里插入图片描述

django运行

第一次运行时,先运行下行命令进行初始化后
python manage.py migrate

运行:在终端项目根目录下输入如下命令,即可启动django项目
python manage.py runserver

templates文件和static文件

tamplate文件用于存放html代码
static文件用于存放css和js代码
在这里插入图片描述

templates

templates一般放在对应的APP目录下
-如果在templates创建在工程根目录,默认是不起作用的,需要在settings.py中进行配置。
-还有如果多个app下都有templates目录,django会按照app的注册顺序逐个templates目录查找
-如果根目录中模板名和app中模板名一样,那么会优先使用根目录中模板
例子:一个名为restaurant的项目,有accounts, OrderSystem两个app
查找顺序如下:
在这里插入图片描述
先看根目录下的templates,再看包里的内置页面,最后看各个应用下的页面
在根目录时,settings.py配置:主要在DIRS里加入对应路径

TEMPLATES = [
    {
        "BACKEND": "django.template.backends.django.DjangoTemplates",
        "DIRS": [os.path.join(BASE_DIR, 'templates')],  # 主要在DIRS下添加对应的路径
        "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",
            ],
        },
    },
]

static

django中推荐用{% static %} 模板语法,来加载静态文件,这样当静态文件夹改变时不需要再修改每个引用路径。
<link rel="stylesheet" href="{% static 'style.css' %}">
就可以像这样来导入静态文件

声明static语法
{% load static %}要写在顶部,写在html文件开头
声明static的原理:
声明static会从settings.py中的STATIC_URL去找
调用语法:{% static ‘…’ %},其中…是静态文件里的路径
修改static文件路径时,方便修改(只需要改settings.py即可,不需要一个个去修改)

配置静态文件路径
在settings.py中配置static文件

STATICFILES_DIRS = [
   os.path.join(BASE_DIR, 'app/static'),
]

配置静态文件访问URL

STATIC_URL = '/static/

STATICFILES_DIRS指定了静态文件的路径
STATIC_URL指定了静态文件的访问URL。
这样在模板中可以使用{% static ‘file_path’ %}来引用静态文件,其中file_path是相对于STATICFILES_DIRS的路径。

连接MySQL数据库

找到settings.py下默认的sqlite数据库配置
在这里插入图片描述
删掉后添加下列代码:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql'# 默认
        'NAME': 'database_name'# 连接的数据库名称
        'HOST': '127.0.0.1'# mysql的ip地址,这里是本机地址
        'PORT': 3306# mysql的端口
        'USER': 'root'# mysql的用户名,一般是root
        'PASSWORD': '123123'  # mysql的登录密码
    }
}

再找到同目录下的__init__.py
在这里插入图片描述
添加

import pymysql
pymysql.install_as_MySQLdb()

如果没有pymysql,还需要额外安装第三方库
pip install pymysql

后面再在有manage.py的目录下运行如下代码

python manage.py makemigrations
python manage.py migrate

来进行数据库的迁移

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值