初识 Django

安装

安装 Python

推荐使用 Python 3 而不是 Python 2 版本,因为毕竟 Python 2 已经停止维护更新,所以先安装 Python 3,哪个版本的都可以。
多说下,如果你是需要两个版本并存,比如我的电脑上因为有些脚本还是 Python 2 写的,所以还是不能直接换成 Python 3,就要下载两个不同的版本。
我是先下载的 Python 2 后下载的 Python 3,方法很简单,把其中一个的 python.exe 改名字,因为常用的还是 Python 2,所以这里是把 Python 3 文件夹下面的 python.exe 改成了 python3.exe, 记得要把 folder 路径加到环境变量里面,这样想用 Python 3 运行的时候就执行 :

python3 xxx.py

特别说明下,如果是用 pip install package 的时候,需要打如下命令才能安装到 python 3 下:

python3 -m pip install xxx

安装 Django

直接使用 pip 安装就好:

python3 -m pip install django

如果想下载最新的,就需要到官网 上查看最新的版本,比如现在最新的是3.0.4, 那么安装命令就是:

python3 -m pip install Django==3.0.4

创建项目

初始项目

首先创建一个项目,进入要创建的目录运行如下命令:

django-admin startproject project_name

运行后目录下会创建对应的folder,结构如下:

mysite/
    manage.py
    mysite/
        __init__.py
        settings.py
        urls.py
        asgi.py
        wsgi.py

解释下每个文件代表的意思:

  • manage.py: 这个是命令行运行的入口
  • settings.py: 项目的设定和配置
  • urls.py: 路由文件,链接内的跳转都在这里配置
  • asgi.py: 异步的 SGI,这个是 Django 3.0 才引入的新特性,详细的介绍可以参考这里
  • wsgi.py: 同上

运行

在项目根目录下面,运行如下的命令:

python3 manage.py runserver

如果没有异常会显示如下:

Django version 3.0.3, using settings 'vendor_loading.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.

那么打开浏览器输入上面的link,就可以正常打开 Django server的网页了,当然这个只是本地测试开发使用,正式产品可不是这种方法。

创建应用

这里一开始也有些困惑项目的应用的意思,其实可以理解成,项目相当与一个网站的骨架,基于这个骨架下你可以有多种不同的应用类型,比如 Blog,短视频,这样的好处是只要都是 Django 建站,那么这些应用可以很方便放到不同的网站服务器中运行。

创建成功后,接下来要做什么呢?当然是先所见即所得,先可以看到一个启动后的网页。

创建一个视图

在创建出来的应用中有一个文件叫 view.py, 默认是空的,我们先简单的放上一句话:

from django.http import HttpResponse

def index(request):
return HttpResponse("Hello, world. You're at the polls index.")
这里先不管他的意思,可以想象成就是返回了一串文字插入到html中。

接下来视图有了,问题是这个视图怎么被叫到呢?创建一个新的 python 文件,因为是路由相关的,就叫 urls.py,输入如下的内容:

from django.urls import path

from . import views

urlpatterns = [
    path('', views.index, name='index'),
]

这个从字面上比较好理解,创建一个urlpatterns, 路径默认使用views.index 这个方法,回到前面的 views.java文件,就可以看到这里的views.index 就是 views.py 的方法。

那么接下来,这个 urls 又会在哪里被用到呢?答案是在项目里面,别忘了现在这些都是在应用的 folder 中,所以还需要在项目的 urls.py 中加入对应用的 urls.py的调用,改动如下:

from django.contrib import admin
from django.urls import include, path

urlpatterns = [
    path('polls/', include('polls.urls')),
    path('admin/', admin.site.urls),
]

这里详细说明下 path 的用法,总共会有4个参数,route, view, kwargs, name, 其意思分别如下:

  • route: 是一个字符串表达式,实际就是根据表达式去匹配第一个匹配的,顺序是从上到下
  • view: 在找到匹配的表达式后,就去调用对应的视图函数,会传递一个 HttpRequest 作为第一个参数传给视图函数
  • kwargs: 可选参数
  • name: 可选参数
    到此,便可以在你的浏览器上根据route里面的定义,来访问不同的视图,比如说http://127.0.0.1:8000/admin,这个就会打开 Django 自带的 admin 应用

你可能感兴趣的:(初识 Django)