zoukankan      html  css  js  c++  java
  • 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
    
  • 相关阅读:
    alibaba/fescar 阿里巴巴 开源 分布式事务中间件
    InnoDB表优化
    解密日志文件工具类
    MYSQL 数据库结构优化
    MYSQL 索引优化
    MYSQL 表转 JavaBean 工具类
    MYSQL 优化
    mysql 数据库备份和恢复
    DMA-Direct Memory Access
    mysql 优化之 doublewrite buffer 机制
  • 原文地址:https://www.cnblogs.com/ZJT7098/p/12359323.html
Copyright © 2011-2022 走看看