Django安装:
关于Django的安装网上有许多优秀的教程,我们的主要目的也不是讲解如何安装Django,所以如果大家有不懂Django怎么安装的可以先在网上查询安装方法。在这里我就直接说一种对新手小白最为友好的一种方式,直接下载pycharm专业版,里面是自带Django,所以就不需要我们再自己手动安装,可以省去不少麻烦。
创建Django项目:
和Django安装一样,创建Django项目也完全可以使用命令行来进行操作,但是依旧考虑到使用命令行来进行操作势必会对新手产生一些困扰,所以我们仍然选择最简单的界面话操作来进行Django项目的创建。
首先打开pycharm,选择新建项目,就会弹出如下界面:
我们点击第二项选择以Django来创建项目,至于要选择我们项目存放的路径即可,其他的Pycharm会自动帮我们配置好,点击创建以后,pycharm会再路径末端创建三个文件夹,一个是与路径末端文件夹同名的项目文件夹,一个是templates模板文件夹,一个是venv虚拟环境的文件夹,还有一个manage.py文件。
目录层级说明:
templates文件夹是空的
Django_01项目文件夹:
init.py
一个空文件,告诉Python该项目是一个Python包
asgi.py
一个为与asgi兼容的web服务器提供服务的入口点。
settings.py
项目的配置文件
urls.py
项目的URL申明,一份由Django驱动的网站“目录”
wsgi.py
一个WSGI兼容的Web服务器的入口,以便运行你的项目
manage.py
一个命令行工具,可以让你以各种方式与该Django项目进行交互
同样的创建Django项目也可以使用类似的命令
django-admin startproject ###
需要注意的是,在使用这行命令来创建项目时,尽量cd到项目目录的文件夹下进行操作,如果依旧cd到例如我上面使用的Django_01中去使用此命令,就会在Django_01中生成一个###文件夹,在###文件夹下只包含了一个文件夹,一个是###同名的项目文件夹,还有一个manage.py文件。这样会显得目录层级比较复杂。可以发现,我们用命令创建的Django项目相比用pychaem创建少了templates模板文件夹和venv虚拟环境文件夹。
创建完成后,我们就可以运行程序查看创建是否成功,第一种方式在pycharm中选择Django项目,然后点击运行
第二种方式就是在终端中输入命令py manage,py runserver运行
用您的Web浏览器访问http://127.0.0.1:8000/。你会看到一句“恭喜!”一枚火箭起飞了。它工作!
创建app
创建好了Django项目后,我们还需要一些app来进行开发,在本教程中,我们将在与manage.py文件相同的目录下创建我们的poll app,这样它就可以作为自己的顶级模块导入,而不是作为mysite的子模块。这时我们完全可以沿用创建项目时的方式来进行创建app,但是我们也有另外一种选择,利用pycharm中的终端输入命令创建app
如果终端中现在所在路径不是项目所在的最终目录,在项目中创建app首先要在终端中cd到你所要创建app的那个项目中去,例如上面我需要在Django_01这个项目中创建app,所以我首先要输入cd Django_01,然后按回车,这样我们就成功进入了项目所在的文件夹中,接着我们只需要输入这行命令
django-admin startapp ####
###指代你所要创建app的名称,就可以成功在原有项目中创建一个app了。
编写Django文件
编写views
#Django_01_app01/views.py
from django.http import HttpResponse
def test01(request):
return HttpResponse('hello')
这是Django中最简单的函数视图。要调用视图,我们需要将它映射到一个URL——为此,我们需要一个URLconf。
创建URLconf
#Django_01_app01/urls.py
from Django_01.urls import path
from Django_01_app01.views import *
urlpatterns = [
path('', test02),
]
下一步是将根URLconf指向轮询url模块。在Djiango_01/urls.py中,为django.urls添加一个import,并在urlpatterns列表中插入一个include(),这样你就有:
#Djiango_01/urls.py
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('Django_01_app01.urls'))
]
include()函数允许引用其他url配置文件。当Django遇到include()时,它会切断匹配的URL的任何部分,并将剩余的字符串发送给包含的URLconf进行进一步处理。
运行程序,浏览如下网址,出现"hello"说明成功