6、Python的Django快速入门

本文介绍了Django框架的基本概念,包括其MTV架构,并详细展示了如何搭建Django环境,创建并运行第一个项目,修改配置文件,创建自定义应用以及编写视图和URL映射。通过实例演示了如何在Django中开发简单的Web应用,帮助读者快速入门Django开发。
摘要由CSDN通过智能技术生成

目录

Django概述

快速入门

1、环境搭建

2、安装django

 3、检查Django环境并使用django-admin命令创建Django项目(项目名称为hellodjango)。

 4、启动Django自带的服务器运行项目。

5、修改项目的配置文件settings.py

创建自己的应用

 总结


Django概述

Python的Web框架中,Django无疑是最有代表性的重量级选手,开发者可以基于Django快速的开发可靠的Web应用程序,因为它减少了Web开发中不必要的开销,对常用的设计和开发模式进行了封装,并对MVC架构提供了支持(Django中称之为MTV架构)。

MVC是软件系统开发领域中一种放之四海而皆准的架构,它将系统中的组件分为模型(Model)、视图(View)和控制器(Controller)三个部分并借此实现模型(数据)和视图(显示)的解耦合。

Django项目中我们称之为MTV,MTV中的M跟MVC中的M没有区别,就是代表数据的模型,T代表了网页模板(显示数据的视图),而V代表了视图函数,在Django框架中,视图函数和Django框架本身一起扮演了MVC中C的角色。

Django框架在2005年夏天作为开源框架发布,使用Django框架能用很短的时间构建出功能完备的网站,因为它代替程序员完成了那些重复乏味的劳动,剩下真正有意义的核心业务给程序员来开发,这一点就是对DRY(Don't Repeat Yourself)理念的最好践行。

快速入门

第一个Django项目

1、环境搭建

检查Python环境:Django 1.11需要Python 2.7或Python 3.4以上的版本;Django 2.0需要Python 3.4以上的版本;Django 2.1和2.2需要Python 3.5以上的版本;Django 3.0需要Python 3.6以上版本。

使用虚拟环境:

安装 virtualenv

pip install virtualenv
#查看版本
virtualenv --version   

#virtualenv 20.13.4 from d:\soft\python\lib\site-packages\virtualenv\__init__.py

安装完后,在当前目录下创建一个名为 venv 的虚拟环境:

virtualenv  venv

 激活虚拟环境

.\venv\Scripts\activate

注这里操作在Idea中操作。

激活后如下显示:

 路径会出现(venv)

2、安装django

在虚拟环境安装django

pip install django==2.2.13

使用pip list查看,安装成功如下:

 3、检查Django环境并使用django-admin命令创建Django项目(项目名称为hellodjango)。

django-admin --version
django-admin startproject hellodjango

 创建成功目录如下:

  • hellodjango/__init__.py:空文件,告诉Python解释器这个目录应该被视为一个Python的包。
  • hellodjango/settings.py:Django项目的配置文件。
  • hellodjango/urls.py:Django项目的URL映射声明,就像是网站的“目录”。
  • hellodjango/wsgi.py:项目运行在WSGI兼容Web服务器上的入口文件。
  • manage.py: 管理Django项目的脚本程序。

 4、启动Django自带的服务器运行项目。

在idea的的终端(Terminal)中通过命令运行项目

python manage.py runserver
#指定端口和IP
python manage.py runserver 127.0.0.0:9000
#指定端口
python manage.py runserver 9000

运行成功如下:

 访问http://127.0.0.1:8000/

成功返回如下页面: 

 

 说明:

  1. 如果修改了代码,不需要重新启动Django自带的服务器。但是,在添加新的项目文件时,该服务器不会自动重新加载,这个时候就得手动重启服务器。
  2. 在终端中运行的服务器,可以通过Ctrl+C来停止它 。
  3. 刚刚启动的Django自带的服务器只能用于开发和测试环境,不适合在生产环境中使用。因为服务器是纯Python编写的轻量级Web服务器。

5、修改项目的配置文件settings.py

Django是一个支持国际化和本地化的框架,因此刚才我们看到的Django项目的默认首页也是支持国际化的,我们可以通过修改配置文件将默认语言修改为中文,时区设置为东八区。找到修改前的配置(在settings.py文件第100行以后)。

LANGUAGE_CODE = 'en-us'
TIME_ZONE = 'UTC'

修改为以下内容。

LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Chongqing'

创建自己的应用

如果要开发自己的Web应用,需要先在Django项目中创建“应用”,一个Django项目可以包含一个或多个应用。

1、在idea的终端执行以下命令,创建名为first的应用。

python manage.py startapp first

 目录结构如下所示:

    • __init__.py:一个空文件,告诉Python解释器这个目录应该被视为一个Python的包。
    • admin.py:可以用来注册模型,用于在Django框架自带的管理后台中管理模型。
    • apps.py:当前应用的配置文件。
    • migrations:存放与模型有关的数据库迁移信息。
      • __init__.py:一个空文件,告诉Python解释器这个目录应该被视为一个Python的包。
    • models.py:存放应用的数据模型(MTV中的M)。
    • tests.py:包含测试应用各项功能的测试类和测试函数。
    • views.py:处理用户HTTP请求并返回HTTP响应的函数或类(MTV中的V)。

2、 修改应用目录下的视图文件views.py

from django.http import HttpResponse


def show_index(request):
    return HttpResponse('<h1>Hello, Django!</h1>')

3、修改Django项目目录下的urls.py文件,将视图函数和用户在浏览器中请求的路径对应。

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

from first.views import show_index

urlpatterns = [
    path('admin/', admin.site.urls),
    path('hello/', show_index),
]

4、重新运行项目,并打开浏览器中访问http://127.0.0.1:8000/hello。

5、修改成动态页面

from random import sample

from django.http import HttpResponse


def show_index(request):
    fruits = [
        'Apple', 'Orange', 'Pitaya', 'Durian', 'Waxberry', 'Blueberry',
        'Grape', 'Peach', 'Pear', 'Banana', 'Watermelon', 'Mango'
    ]
    #随机从列表选择三个值
    selected_fruits = sample(fruits, 3)
    content = '<h3>今天推荐的水果是:</h3>'
    content += '<hr>'
    content += '<ul>'
    for fruit in selected_fruits:
        content += f'<li>{fruit}</li>'
    content += '</ul>'
    return HttpResponse(content)

 总结

至此,我们已经利用Django框架完成了一个非常小的Web应用,虽然它并没有任何的实际价值,但是可以通过这个项目对Django框架有一个感性的认识。学习Django最好的资料肯定是它的官方文档,官方文档提供了对多国语言的支持,而且有新手教程引导初学者学习使用Django框架,建议大家通过阅读Django的官方文档来学习和使用这个框架。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值