iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python之django框架入门,看完你就会
  • 410
分享到

python之django框架入门,看完你就会

djangopython后端 2023-09-10 20:09:22 410人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

目录 1.创建Django项目  2.创建Django应用  3.定义ORM模型 4.创建并执行数据库迁移 5.定义视图函数 6.定义URL路由 7.编写模板 Django是一个基于python的WEB框架,它旨在提供开发人员一个高效而

目录

1.创建Django项目

 2.创建Django应用

 3.定义ORM模型

4.创建并执行数据库迁移

5.定义视图函数

6.定义URL路由

7.编写模板


Django是一个基于pythonWEB框架,它旨在提供开发人员一个高效而且富有灵活性的工具集。它包含了一套完整的组件,涵盖了从路由、视图、模板、表单到ORM等多个方面,能够让开发人员快速搭建一套高质量的Web应用。DjanGo也是Python社区最主流的Web框架之一,许多知名网站如Instagram、Pinterest和Mozilla等都基于Django构建。

在本篇文章中,我们将为大家介绍如何搭建一个简单的Django应用,并为您提供详细的代码示例。本文假设读者已经掌握了Python基础web开发相关知识,并安装了Django(本文中使用的版本为3.2.5)。

1.创建Django项目

首先,我们需要在本地创建一个新的Django项目。此处我们创建一个名为“myproject”的项目。

运行以下命令:

django-admin startproject myproject

创建好项目之后,我们会得到以下目录结构:

myproject/    manage.py    myproject/        __init__.py        asgi.py        settings.py        urls.py        wsgi.py

其中:

  • manage.py:Django项目的管理工具,通过它可以进行一些常用的操作,如启动服务、创建数据库等。
  • myproject/:项目的主目录,也是Python包的声明。其中包含了一些基础文件,如项目配置文件(settings.py)、URL定义文件(urls.py)等。

 2.创建Django应用

在项目中,我们可以创建多个Django应用。每个Django应用都是独立的模块,包含自己的URL映射、视图、模板等组件。我们创建一个名为“blog”的应用,来演示Django应用的创建过程。

在项目根目录下运行以下命令:

python manage.py startapp blog

创建好应用之后,我们会得到以下目录结构:

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

其中:

  • init.py:空文件,让Python将此目录视为一个Python包。
  • admin.py:Django后台管理的相关配置。
  • apps.py:应用的一些元数据信息,如应用名、版本号等。
  • models.py:ORM模型定义文件,用于与数据库交互。
  • tests.py:Django测试相关的文件,可用于自动化测试
  • views.py:视图文件,定义了所有的视图函数。

 3.定义ORM模型

在Django中,ORM模型映射数据库中的表,我们可以通过ORM模型来操作对应表中的数据。Django中的ORM模型以类形式表现,一个模型类代表着一个表。在blog应用中,我们定义一个名为Post的模型,用于存储博客文章数据。

在blog/models.py中添加以下代码:

from django.db import modelsclass Post(models.Model):    title = models.CharField(max_length=50)    body = models.TextField()    pub_date = models.DateTimeField(auto_now_add=True)    def __str__(self):        return self.title

在上述代码中,我们继承了Django中的Model类,这使得此类变成了一个ORM模型。其中title、body、pub_date分别代表着博客文章的标题、正文和发布时间,类型分别为CharField、TextField和DateTimeField。str()方法定义了在调用print函数时显示的字符串格式。

4.创建并执行数据库迁移

Django中的ORM模型一般需要基于其定义的结构生成数据库表结构。为此,Django提供了一个叫做迁移(migrations)的机制,用来生成、修改和管理数据库表结构。通过运行以下命令,我们可以生成Post模型的迁移文件:

python manage.py makemigrations blog

接着,我们可以通过运行以下命令,在数据库中创建Post模型对应的表:

python manage.py migrate

5.定义视图函数

视图函数是Django应用的核心组件之一,用于处理Http请求,并返回HTTP响应。在我们的博客应用中,我们定义一个主页视图和一个文章详情视图。在blog/views.py中添加以下代码:

from django.shortcuts import render, get_object_or_404from . models import Postdef home(request):    posts = Post.objects.all().order_by('-pub_date')    return render(request, 'blog/home.html', {'posts':posts})def post_detail(request, post_id):    post = get_object_or_404(Post, pk=post_id)    return render(request, 'blog/post_detail.html', {'post':post})

在上述代码中,我们使用了Django提供的render函数,来渲染指定模板,并将指定的数据传递给模板。

注意,我们使用了get_object_or_404函数,这个函数会在查询结果为空时返回404错误页面,而不是抛出异常。

6.定义URL路由

Django将URL路由映射为视图函数,我们需要在项目的urls.py中定义URL路由规则。在本例中,我们将博客应用的主页映射到“/”路径,并将文章详情页面映射到“/post/”路径。

在myproject/urls.py中添加以下代码:

from django.contrib import adminfrom django.urls import path, includefrom blog import viewsurlpatterns = [    path('', views.home, name='home'),    path('post/', views.post_detail, name='post_detail'),    path('admin/', admin.site.urls),]

在上述代码中,我们使用了path函数来定义URL路由规则。注意,我们将其命名为home和post_detail。

7.编写模板

最后一步是编写模板,Django使用模板来生成最终的HTML页面。在blog应用中,我们创建了两个模板,分别表示博客首页和文章详情页面。新建blog/templates/blog/home.html文件,添加以下代码:

        Welcome to Blog    

Blog

在上述代码中,我们使用Django模板系统中的for标签遍历查询到的所有文章,并通过url模板标签定义文章详情页面的URL地址。

接着,我们新建blog/templates/blog/post_detail.html文件,添加以下代码:

        {<!-- -->{ post.title }}    

{{ post.title }}

{{ post.body }}

{{ post.pub_date }}

在上述代码中,我们使用Django模板系统中的变量标签来显示文章的标题、正文和发布时间。

至此,我们已经完成了一个简单的Django应用的搭建,可以在浏览器中访问了。运行以下命令启动Django开发服务器

python manage.py runserver

然后在浏览器中访问http://localhost:8000即可浏览博客首页。点击任意一篇文章的标题,即可前往文章详情页面。

本文仅涵盖了Django的入门部分,Django框架拥有更加强大和丰富的功能,如表单、图片上传、用户认证等等,读者可以参考Django官方文档深入了解。

来源地址:https://blog.csdn.net/naer_chongya/article/details/131331716

--结束END--

本文标题: python之django框架入门,看完你就会

本文链接: https://www.lsjlt.com/news/402607.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作