当前位置: 首页>前端>正文

Django 构建项目

1. cmd 命令构建项目

  1. cmd 窗口中,切换到指定的项目文件夹,执行:
django-admin startproject mysite

其中 mysite 是项目名称
这时会在指定的项目文件夹中,生成一个mysite 文件夹,目录结果如下:

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

这些目录和文件的说明如下:

  • 最外层的 mysite/ 根目录是项目的名称
  • manage.py 是管理 Django 项目的命令行工具
  • 里面一层的 mysite/ 目录包含项目的主应用,它是一个 Python 包
  • mysite/init.py: 一个空文件,告诉 Python 这个目录是一个 Python 包
  • mysite/settings.py: 项目的配置文件
  • mysite/urls.py: 项目的 url
  • mysite/wsgi.py: 用于你的项目与 WSGI 兼容的 Web 服务器入口,用于项目部署
  1. cmd 窗口中,进入最外层的 mysite
  2. 在这个目录下,我们可以输入如下命令,创建一个新的子应用:
django-admin startapp first_app
  1. 在该 cmd 目录下执行如下命令,可以启动项目:
python manage.py runserver

该命令后续可以增加参数:

python manage.py runserver 8081
python manage.py runserver 127.0.0.1:8082

cmd 窗口中会出现如下信息:

F:\django_study\first_pro>python manage.py runserver
Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).

You have 17 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.
July 03, 2019 - 16:11:57
Django version 2.2.1, using settings 'first_pro.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.
[03/Jul/2019 16:13:06] "GET / HTTP/1.1" 200 16348
[03/Jul/2019 16:13:06] "GET /static/admin/css/fonts.css HTTP/1.1" 200 423
[03/Jul/2019 16:13:06] "GET /static/admin/fonts/Roboto-Regular-webfont.woff HTTP/1.1" 200 85876
[03/Jul/2019 16:13:06] "GET /static/admin/fonts/Roboto-Light-webfont.woff HTTP/1.1" 200 85692
[03/Jul/2019 16:13:06] "GET /static/admin/fonts/Roboto-Bold-webfont.woff HTTP/1.1" 200 86184
Not Found: /favicon.ico
[03/Jul/2019 16:13:06] "GET /favicon.ico HTTP/1.1" 404 1975
  1. 在浏览器中访问第4步提示的服务器网址: Starting development server at http://127.0.0.1:8000/ 中的 http://127.0.0.1:8000/ ,会出现如下欢迎页面:
    Django 构建项目,第1张
    a2944d6a1ac1485099183990c7d94cbb.png
  2. 第5步能够打开一个 django 的欢迎页面,是因为第4步中的命令,启动了 django 自带的一个简易 web 服务器,它是一个用纯 Python 写的轻量级的 Web 服务器。仅仅用于开发环境,不要在生产环境使用。
    在这个服务器中,在需要的情况下会对每一次的访问请求重新载入一遍 Python 代码。所以你不需要为了让修改的代码生效而频繁的重新 启动服务器。然而,一些动作,比如添加新文件,将不会触发自动重新加载,这时你得自己手动重启服务器。

2. PyCharm 构建项目

  1. pycharm 中 file >> new project >> django
    Django 构建项目,第2张
    0b99dd89186d4fff98cddb9f932e0df8.png

    只有 pycharm professional版本才可以直接创建django项目
  2. location 中,前面路径,选择你自己的项目路径, untitled 项目名改为 firstdjangopycharm 变成如下 F:\py_study\firstdjangopycharm
  3. project interpreter 点击左边的三角形,选择合适的解释器
  4. more settings 点击左边的三角形,设置 application name 点击 create
  5. 查看目录结构如下:
    Django 构建项目,第3张
    b6a0cacc8a1348389e868634912b91e2.png

    其中 polls 子应用下各文件的说明如下:

  • migrations: 执行数据库迁移操作,就是把models 中的 model 映射到数据库
  • admin: admin 管理界面文件
  • apps: 本应用的相关配置文件
  • models: 数据库的 model 文件
  • tests: 测试函数文件
  • views: 视图文件
  1. 启动项目:
    6.1. 运行根目录 下的 manage.py,第一次会运行失败,因为没有添加参数
    6.2. 在 pycharm 的右上角,选择 edit configurations


    Django 构建项目,第4张
    e959026d23ff4e268cf8774d38164103.png

    6.3. parameters 中写入 runserver 0.0.0.0:8000


    Django 构建项目,第5张
    df95941aa7a3455a9ec1ba63234d26cf.png

    6.4.首次运行 manage.py 控制台显示信息如下:
    Django 构建项目,第6张
    3faf4b8c004c4cd49d269fec2a6f1fca.png

    6.5 在浏览器中访问: http://127.0.0.1:8000 , 可以看到django的欢迎页面
  2. 添加第一个页面
    7.1 修改 polls/views.py 增加如下代码
from django.http import HttpResponse

def index(request):
    return HttpResponse("欢迎学习Django!")

这是Django中最简单的视图。
定义了一个 index() 函数,第一个参数必须时 request,与网页发来的请求有关,request变量里面包含了 get或post 的内容,用户浏览器,系统等信息在里面。
7.2 在polls目录下新建 urls.py

from django.urls import path
from . import views

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

7.3 修改主应用下的urls.py (firstdjangopycharm/urls.py)

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

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

7.4 重新启动 manage.py
7.5 浏览器中访问 http://127.0.0.1:8000/polls/,浏览器会显示我们在 views 中返回的内容

欢迎学习Django!

https://www.xamrdz.com/web/2x31994394.html

相关文章: