Django最小程序的创建

本文举了一个具体的例子来说明Django最小程序的创建

Django安装

在系统中安装好Python3环境和pip3之后,在命令行下运行:
pip3 install django
即可完成Django的安装

创建Django最小程序

1.创建project

选择一个目录,在命令行中运行:
django-admin startproject myproject
其中"myproject"可以替换为其他名字。该命令在当前目录下创建了一个文件夹,这个文件夹的名字可以更改。进入该文件夹,可以看到有一个"manage.py"文件和一个名为"myproject"的文件夹。

2.创建app

在含有"manage.py"的目录下运行命令:
python manage.py startapp mytest
其中mytest是你的app的名字。该命令在当前目录下创建了一个名为"mytest"的文件夹

3.设置:urls.py

首先简单理解一下Django是如何处理一个url请求的。在获得一个地址后,Django会到"myproject"文件夹中的"urls.py"中寻找有没有相应的地址,初始的"urls.py"如图:

初始的urls.py

比如,假设是在本地服务器上运行的Django,当Django获得地址请求127.0.0.1:8000/admin之后,并不是跳转到admin.html,而是在urls.py中的urlpatterns中寻找"admin/"(默认结尾处都要加上'/'),如果找到的话就执行相应指点的函数,即"admin.site.urls"这个函数,否则返回404错误。
接下来我们可以设置特定的地址,使Django遇到该地址请求时执行我们自定义的函数。一般来说,是在app的"views.py"中开发自己的网站视图,也就是这篇文章的例子中的"mytest"文件夹下的"views.py"
比如我们想将地址"test/"指向我们的自定义的页面,我们首先需要向"myproject"文件夹下的"urls.py"添加如下内容:
首先在urlpatterns中添加一个"path":
path('test/',views.test)
这个语句的意思是将地址"test/"对应到函数"views.test".为了使这个语句正确执行,我们还需要指明views是什么,即在开头添加语句:
from mytest import views
简单说明一下,python中如果一个文件夹下含"__init__.py",可以将这个文件夹作为一个外部库导入,由于"views.py"是在文件夹"mytest"下,因此导入方式如上
设置后的"myproject/urls.py"如下:
设置urls.py

4.编写处理函数:views.py

设置好地址对应的函数后,接下来来到mytest/views.py,新建函数def test(request),"request"是Django用于处理请求的一个关键字。函数内容为:
return render(request,'test.html')
"render"用于与html之间传输数据,这个函数最终返回了一个html页面,这个"test.html"也就是会最终展示在浏览器中的页面

5.编写html页面

在Django中,所返回的html文件叫做"templates",之所以叫做模板是因为html文件提供了视图,而具体的数据则是由render函数提供给html.
一般新建一个文件夹专门用于放置html模板,我们在app的文件夹下建立"mytest/templates/",然后在该目录下新建"test.html",并写入最基本的html视图:

test.html

接下来,我们还需要告诉Django模板存放的目录,因此,进入"myproject/settings.py",找到"TEMPLATES",在其中的"DIRS"中添加目录:
os.path.join(BASE_DIR,mytest/templates')

6.启动本地服务器运行最小程序

启动命令行进入到含有"manage.py"的目录下,输入:
python manage.py runserver
会见到如下输出:

runserver

然后,在浏览器地址栏中输入:127.0.0.1:8000/test,得到页面:
html页面

命令行中按下ctrl+c可关闭本地服务器

更多

以上介绍了最简单的Django程序的创建,要想搭建一个理想的网站,还会涉及到更多的操作,比如数据从后端到前端的传送,数据库的使用等等。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • (一)、启动服务器 (二)、创建数据库表 或 更改数据库表或字段 Django 1.7.1及以上 用以下命令 1....
    夏天夏星阅读 5,704评论 0 17
  • Django的来历:python开发的! long long long years ago!劳伦斯出版集团新闻 网...
    JAguys阅读 361评论 0 0
  • 1、主从服务器分别作以下操作: 版本一致 初始化表,并在后台启动mysql 修改root的密码 2、修改主服务器m...
    bchz阅读 457评论 0 0
  • 今天是个值得庆贺的日子,我的日记已经写满20篇了。 在这20天里,有两天是没写的, 因为我觉得那两天没有可写的...
    王歆鑫阅读 246评论 0 0
  • 周末,风和日丽,正在上大四的我外出游玩,突见一位在天桥摆摊的老者,老者银发银须,脸颊清瘦,身着白衣,正闭目养神,好...
    辰时十二雨阅读 196评论 0 0