Django Hello World!

环境要求

  1. 下载、安装 python3

  2. 安装 pipenv(用于创建python的虚拟环境)

pip3 install pipenv

直接上示例

步骤为:

  1. 创建并进入目录
  2. 用pip3安装Django
  3. 激活虚拟环境
  4. 创建新的Django项目(project)
  5. 在项目里创建 pages 程序(app)
  6. 修改 settings.py
  7. 运行

创建项目

$ mkdir helloworld
$ cd helloworld

# 激活虚拟环境,此时目录下多了个Pipfile [注意,我们后续的操作,都是在该虚拟环境中进行的]
$ pipenv shell

# 安装Django
$ pip3 install django

# 创建项目到当前目录
$ django-admin startproject helloworld_project ./

现在的目录结构如下:

helloworld
  - Pipfile
  - Pipfile.lock
  - manage.py
  - helloworld_project
    - __init__.py
    - settings.py
    - urls.py
    - wsgi.py

运行项目

$ python manage.py runserver

访问http://127.0.0.1:8000/可看到Django的默认页面

创建app

一个Django项目里面往往包含多个app,每个app负责一部分功能。

现在我们来创建一个app

# 创建一个名为 pages 的app。执行后,会发现当前目录下多了个pages目录
$ python manage.py startapp pages

在项目级别的settings.py中注册我们的app:

# helloworld_project/settings.py
INSTALLED_APPS = [
    'pages.apps.PagesConfig', # 新增
  ......
]

编写view文件,用于显示hello world

# pages/views.py 
from django.http import HttpResponse

def homePageView(request):
    return HttpResponse('Hello, World!')

为了能让浏览器找到 homePageView,我们还需要编写urls.py。

请求的导航路径是这样的:项目urls.py -> app的urls.py -> 具体的view。

因此我们需要修改完2个urls.py文件才算完成。

编写app级别的url,把app接受到的请求导向对应的view函数

在pages目录下新建urls.py文件,并输入以下内容。

# pages/urls.py 
from django.urls import path
from .views import homePageView
urlpatterns = [
    path('', homePageView, name='home') 
]

接着,编写项目级别的url文件,把项目接收到的请求导向对应的app。

# helloworld_project/urls.py
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('pages.urls')), 
]
$ python manage.py runserver

现在访问 http://127.0.0.1:8000/, 可以看到我们的hello world 显示在页面上。

目录结构解析

为了能自己编写、修改项目,我们需要明白部分关键文件的职责。

settings.py(项目级别)

控制项目的配置,比如,注册app,设置数据库等。

urls.py

管理接收、响应的规则。在这里指明项目允许接收哪些URL,接收后由哪个函数进行处理。

manage.py

用于执行Django的各种指令。比如创建项目、创建app、运行服务等。

views.py

接收请求(request)并返回响应(response)的地方。 可以理解为是个编写业务逻辑的地方。

admin.py

Django有个内置的admin程序,该文件就是用于配置admin程序的。

apps.py

配置app自身的文件。

models.py

用于定义数据库模型,Django会自动为我们转换为数据库表。

migrations/

跟踪models.py文件的变化,以保持models.py和数据库的同步。这个目录里的内容,通常不用理会。

修改国内源

如果执行 pip3 install pipenv 或者 'pip3 install django' 慢或者失败,可以把pip修改为国内镜像源。

pip镜像修改为国内镜像

$ mkdir ~/.pip # 如果有.pip目录就略过这一条。
$ vim ~/.pip/pip.conf

粘贴以下内容[使用的是阿里云的源]

[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com

猜你喜欢

转载自www.cnblogs.com/ZJT7098/p/12359323.html
今日推荐