笔记整理:Django基本开发流程

Django基本开发流程

Django的主要文件

​ Django按照MTV设计模式以松耦合的方式把不同功能分配到各个文件,这些文件各司其职,通过代码或配置的方式完成独立功能,并与其他文件协作:

urls.py 是进行URL配置的文件,是网址入口,建立URL表达式与视图函数的对应关系,也就是建立访问网址就调用对应函数的机制

views.py 是视图函数存放模块,处理用户发过来的请求。用户请求从url.py中的配置项映射过来,逻辑代码分析用户请求后,从数据库中提取数据,向templates文件夹中的模板文件传递数据

models.py 是数据模型,定义数据表结构,是数据库操作的基础

templates 目录中的文件是模板文件,这些文件是视图函数渲染改造的对象,一般是HTML文件,它与视图函数共同生成具有动态内容的网页。HTML文件中引用到的CSS、JavaScript、图像、音视频等文件一般会另外存放在static目录中,这两个目录都是需要手动创建的。

admin.py 是管理后台配置文件,经过简单的配置代码,就能让后台对数据库数据进行管理

settings.py 是Django配置文件,在文件中可设置应用程序模块、数据库类型、中间件等,可以让各应用程序共享配置内容

apps.py 是应用程序本身的配置文件

manage.py 是简单的命令文件封装文件,可以通过这个文件生成应用程序

Django基本开发流程

部署开发环境:

1、下载django库,这里采用终端命令下载:

pip install django

2、在python安装目录下找到Script目录,查看该目录下有没有django-admin.exe文件,如果有就是安装成功。然后将Script目录添加到环境变量path中,例如我是用的anaconda默认环境,我要在path环境变量中添加的就是C:\Anaconda3\Scripts,如果使用的是其他环境就在C:\Anaconda3\envs找到对应的python环境名再往下找

创建项目:

选择一个目录放置项目,终端进入该目录输入命令

django-admin startproject mypro

执行上述命令后我们就得到了一个名为mypro的目录,该目录我们暂且叫它根目录,之后所有的终端命令都是在这个目录下执行的。根目录下是一个manage.py文件和一个与根目录同名的mypro目录,里面的这个mypro目录暂且叫它项目目录,前边提到的urls.py和setting.py都在这个项目目录下面

创建应用程序:

终端进入项目的根目录,输入命令

python manage.py startapp myapp

执行上述命令后,根目录下会创建一个名为myapp的应用程序目录,前边提到的admin.py、apps.py、views.py、models.py都在这个目录下面

编写逻辑代码:

在myapp/views.py中编写视图函数

from django.shortcuts import *

def index(request):
    hi = "hello world!"
    return render(request,"demo01.html",{"hello":hi})

上述代码的意思就是将模板文件demo01.html,使用字典{“hi”:hi}映射去渲染模板文件中的模板变量。django.shortcuts库里面向客户端反馈信息的函数有三个:HttpResponse()、render()、redirect()。如果只是向客户端传输简单的内容,用HttpResponse()在里面写入字符串格式的html代码就可以,render()、redirect()是将已有的html文件传输过去,具体用法这里不再赘述。

建立URL与视图函数的对应关系:

在mypro/urls.py中编写对应关系

from django.contrib import admin
from django.urls import path
from myapp import views

urlpatterns = [
    path("admin/",admin.site.urls),
    path("index/",views.index)
    # path()函数的第一个参数是客户端的请求信息,第二个参数是视图函数
]

其实到这里,我们就可以通过终端命令让项目跑起来了,但是我们上面写的视图函数是向客户端传递一个渲染后的demo01.html,所以还需要把模板文件demo01.html写出来

加载html页面:

在项目根目录下创建模板文件目录templates,在templates目录下创建模板文件demo01.html

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>你好</title>
	</head>
	<body>
        <h1>
            {{ hello }}  /* 模板变量 */
        </h1>
	</body>
</html>

模板变量格式为双花括号中间加一个变量名,变量名前后有空格,变量的值在视图函数中赋予。

模板文件写好后还需要让Django知道模板文件的位置,这是需要打开mypro/settings.py文件,找到TEMPLATES,修改DIRS值

TEMPLATES = [
    {
        "DIRS" : os.path.join(BASE_DIR,"templates"),
        ...
    }
]

关于模板文件所引用到的静态文件存放目录static,也是同样需要在settings.py中配置一下。在项目根目录下创建目录static,然后打开mypro/settings.py文件先在列表INSTALLED_APPS中添加"django.contrib.staticfiles",再在mypro/settings.py文件中添加以下代码:

STATIC_URL = "/static/"
STATICFILES_DIRS = (
os.path.join(BASE_DIR,"static"),
)

做完这些,一个简单项目就算是写好了。

运行项目:

终端进入项目的根目录,输入命令

python manage.py runserver

django运行程序默认使用端口8000,在浏览器上打开http://127.0.0.1:8000/index/就可以看到我们视图函数想让客户端看到的信息了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值