Django概述

简介: Django概述

Django Demo 入门

前言

本文档旨在从入门到入土的整理Django的学习路线,以提供于其他人进行学习。

本文档参考了Django官方技术文档进行编写。Django版本应为4.2版本。

Django 概览

因为 Django 是在快节奏的新闻编辑室环境中开发的,所以它旨在使常见的 Web 开发任务变得快速和简单。下面是关于如何使用 Django 编写数据库驱动的 Web 应用程序的非正式概述。

本文档的目的是为您提供足够的技术细节以了解 Django 的工作原理,但这并不是一个教程或参考——但我们两者都有!当您准备好开始一个项目时,您可以 从教程开始或直接进入更详细的文档。

设计你的模型¶

尽管您可以在没有数据库的情况下使用 Django,但它带有一个 对象关系映射器,您可以在其中用 Python 代码描述您的数据库布局。

数据模型语法提供了许多丰富的方式来表示您的模型——到目前为止,它已经解决了多年的数据库模式问题。这是一个简单的例子:

mysite/news/models.py¶
from django.db import models
class Reporter(models.Model):
    full_name = models.CharField(max_length=70)
    def __str__(self):
        return self.full_name
class Article(models.Model):
    pub_date = models.DateField()
    headline = models.CharField(max_length=200)
    content = models.TextField()
    reporter = models.ForeignKey(Reporter, on_delete=models.CASCADE)
    def __str__(self):
        return self.headline

安装它

接下来,运行 Django 命令行实用程序自动创建数据库表:

$ python manage.py makemigrations
$ python manage.py migrate

该makemigrations命令查看所有可用模型并为尚不存在的表创建迁移。migrate 运行迁移并在数据库中创建表,并可选择提供更丰富的模式控制。

设计你的 URL

干净、优雅的 URL 方案是高质量 Web 应用程序的重要细节。Django 鼓励漂亮的 URL 设计,并且不在 URL 中放置任何垃圾,例如.php或.asp。

要为应用程序设计 URL,您可以创建一个名为URLconf的 Python 模块。您的应用程序的目录,它包含 URL 模式和 Python 回调函数之间的映射。URLconf 还用于将 URL 与 Python 代码分离。

Reporter对于上面的/示例,URLconf 可能如下所示Article :

from django.urls import path
from . import views
urlpatterns = [
    path("articles/<int:year>/", views.year_archive),
    path("articles/<int:year>/<int:month>/", views.month_archive),
    path("articles/<int:year>/<int:month>/<int:pk>/", views.article_detail),
]

上面的代码将 URL 路径映射到 Python 回调函数(“视图”)。路径字符串使用参数标签从 URL 中“捕获”值。当用户请求页面时,Django 按顺序遍历每条路径,并在第一个与请求的 URL 匹配的路径处停止。(如果它们都不匹配,Django 会调用一个特殊情况的 404 视图。)这非常快,因为路径在加载时被编译成正则表达式。

一旦其中一个 URL 模式匹配,Django 就会调用给定的视图,这是一个 Python 函数。每个视图都会传递一个请求对象——其中包含请求元数据——以及模式中捕获的值。

例如,如果用户请求 URL“/articles/2005/05/39323/”,Django 将调用该函数。news.views.article_detail(request, year=2005, month=5, pk=39323)

相关文章
|
2月前
|
SQL API 数据库
Django如何使用?
【9月更文挑战第1天】Django如何使用?
29 3
|
6月前
|
缓存 前端开发 Unix
Django简介
Django简介。
76 1
|
6月前
|
前端开发 JavaScript 中间件
Django实践-02创建应用
Django实践-02创建应用
Django实践-02创建应用
|
数据库 Python
Django的基础学习
Django基本的项目安装和运行
Django的基础学习
|
安全 关系型数据库 测试技术
Django 最佳实践
Django 最佳实践
161 0
|
设计模式 前端开发 数据管理
Django(1)概述
Django(1)概述
274 0
Django(1)概述
|
存储 中间件 关系型数据库
Django项目框架搭建,快速入门Django
Django提供了django-admin这个功能强大的命令行管理工具,其中最重要的就是可以利用它来完成项目的创建
174 0
Django项目框架搭建,快速入门Django
|
Python
Django的基础学习(下)
Django的基础学习(下)
124 0
|
数据库连接 数据库 Python
Django的基础学习(上)
Django的基础学习
92 0
|
SQL 缓存 自然语言处理
Django入门-1:Django简介和环境搭建
Django入门-1:Django简介和环境搭建
357 0
Django入门-1:Django简介和环境搭建