django 初学(一)

2019-03-05  本文已影响0人  arr

前言

Python Web框架 django的初步学习,通过学习django官网的第一个投票案例,来熟悉django的基本知识。

信息来源

https://docs.djangoproject.com/zh-hans/2.0/intro/tutorial01/

简介

Django是一个高级Python Web框架,鼓励快速开发和干净,实用的设计。由经验丰富的开发人员构建,它解决了Web开发的大部分麻烦,因此您可以专注于编写应用程序而无需重新发明轮子。它是免费和开源的。

安装

新建一个Django的路径,通过pipenv来获得一个干净的Python环境。

pipenv --python 3.7 # 指定Python 3.7作为虚拟环境的python版本
pipenv shell # 激活虚拟环境
pipenv install django # 安装django
pip list # 检查当前环境下python 已安装包的信息

使用

1.创建django项目
django-admin startproject mysite
命令执行成功后,会在当前目录下创建一个 mysite 目录

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

2.启动服务
将路径切换到外层的mysite下,执行以下命令:
python manage.py runserver
出现以下输出:

Performing system checks...

System check identified no issues (0 silenced).

You have 15 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.
March 05, 2019 - 15:30:50
Django version 2.1.7, using settings 'mysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.

说明服务运行成功,访问https://127.0.0.1:8000/即可以看到正在运行的服务器页面。
更换端口:
python manage.py runserver 8080
更换ip:
python manage.py runserver 0:8000
3.创建投票应用
python manage.py startapp polls
运行成功后会生成目录polls/

polls/
    __init__.py
    admin.py
    apps.py
    migrations/
        __init__.py
    models.py
    tests.py
    views.py

4.编写第一个视图
编辑 polls/views.py

from django.http import HttpResponse


def index(request):
    return HttpResponse("Hello, world. You're at the polls index.")

创建url映射文件polls/urls.py

from django.urls import path

from . import views

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

在根url文件中指定polls.urls,编辑mysite/urls.py 文件

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

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

重新启动服务验证是否正常工作
python manage.py runserver
访问 http://localhost:8000/polls/,可以看到页面上显示"Hello, world. You're at the polls index."

path() 函数的用法:
两个必须参数:route 和 view,两个可选参数:kwargs 和 name
route, 匹配的网址路由信息
view,匹配到对应的路由信息后,django会调用对应的视图函数,并传入一个 HttpRequest对象作为第一个参数
kwargs, 任意个关键字参数可以作为一个字典传递给目标视图函数
name, 为url取名,可以利用url的name,来调用对应的url

上一篇下一篇

猜你喜欢

热点阅读