python博客django_技术分享|利用Python Django一步步搭建个人博客(三)

原标题:技术分享|利用Python Django一步步搭建个人博客(三)

c33222dd219f726b96c8f058d58838aa.gif

Hello,欢迎来到“利用Python Django一步步搭建个人博客”系列的第三部分。在第二部分中,我们创建了一个数据库,但还未通过添加实际数据并查看其功能来对其进行测试。在本教程中,我们将向数据库添加数据并通过管理员访问它,同时也会创建我们的博客页面。

为了能够访问我们从管理页面创建的数据库,我们需要注册它。打开我们在上一个教程中创建的blogapp文件夹。在里面,你会找到一个“admin.py”文件。在您喜欢的编辑器中打开它并向其添加以下代码:

ea5451a88260431b6c70a46970766a8e.png

上图代码的简单解释:第3行读取“from .models import Post”。我们告诉Django导入位于models.py文件中的Post数据库。如果没有这一行,当它尝试在第6行运行代码时会出现错误。第6行的代码只是说“admin.site.register(Post)”。这告诉Django管理员应用程序将Post作为链接包含在管理页面中。

立即运行服务器,然后转到localhost:8000 / admin。登录后,您应该看到Post以蓝色突出显示。

d5fb2a41d3a71c492b620c4d3170b8d6.png

单击它,然后添加帖子。我们可以通过这种方式添加、编辑和删除Django管理员的帖子。现在,您的数据库包含一篇文章。您可以根据需要添加。

接下来,我们将创建我们的页面。Django采用构建应用程序的MVC(模型,视图,控制器)方法。基本上,这意味着您的文章数据与呈现它的页面框架是分开的。如果您注意到,我们将Post数据库写入名为“Models”的文件中。该文件仅用于与我们的数据和数据库相关的内容。现在你已经对MVC有一个模糊的理解,让我们开始创建我们的页面。

在blogapp文件夹中,打开“views.py”文件。将以下代码添加到其中:

5050e647ce4252c6c30738bc7195cb9f.png

代码解释:我们看到在第6行定义的函数,这称为“基于函数的视图”。 Django有两种渲染视图的方式:基于函数的视图和基于类的视图。我在这里使用基于函数的视图,因为作为初学者比基于类的视图更容易理解。该函数接受“request”参数,并返回HttpResponse“Hello”。在第3行中,我们可以看到从“django.http”模块导入HttpResponse类。

目前的一个问题是我们无法访问此视图。它没有URL,Django无法知道这个网页是什么以及它是如何工作的。URL(统一资源定位符)是我们页面位置的地址。Django知道如何去寻找你的页面以及如何处理它。为了能够“渲染”此页面,我们必须将其映射到应用程序中的URL。为此,我们转到我们的博客文件夹(原始项目目录中的文件夹)。在此文件夹中有一个名为urls.py的文件。打开它并向其添加以下代码:

6e60fb354caabe2cba75e6805d9315b1.png

代码解释:这是Django urls.py文件。在这里,您可以将URL添加到各种页面中。 urlpatterns是RegEx(正则表达式)的集合,以及包含视图代码的函数(或类)的路径。url方法有两个参数(也可能是三个,我们稍后会看到)。第一个是正则表达式“r ^ / $”,第二个是视图的路径。 “r”表示采用原始字符串。 “^”符号表示模式的开头与字符串的开头匹配,并确保只匹配正确的URL。只是URL的名称,在本例中为“Posts”。“$”符号表示模式匹配字符串的结尾。

例如,我们以“^ posts / $”URL为例。如果我们只写了“posts / $”,那么Django将匹配任何以posts /结尾的URL,例如blog / article / posts而不仅仅是/ posts /。同样,如果我们刚刚写了“^ posts /”,那么Django会匹配以posts开头的任何网址,例如posts/article/而不仅仅是/ posts /。是的,RegEx起初可能会让人不知所措,但经常使用,它们也不是那么令人生畏。

现在让我们运行服务器,看看我们会得到什么。导航到localhost:8000 / posts。瞧!您应该看到呈现的响应。这是一个基本的HTML页面呈现!

e708fe97988194ff8e63660253500c6b.png

恭喜! 你正在取得令人敬畏的进步。 到目前为止我们学到了什么:

1. MVC模型的概述

2.创建页面

3.将页面映射到URL

4.简单了解RegEx

在下一个教程中,我们将讨论Django模板以及如何编写它们。不见不散!返回搜狐,查看更多

责任编辑:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用Django快速搭建一个博客系统是非常容易的,下面是一个简单的步骤: 1. 创建一个Django项目 使用以下命令创建一个新的Django项目: ``` $ django-admin startproject myblog ``` 其中`myblog`是你的项目名称。 2. 创建一个应用 使用以下命令创建一个新的应用: ``` $ python manage.py startapp blog ``` 其中`blog`是你的应用名称。 3. 配置数据库 在`settings.py`文件中配置数据库,例如使用SQLite数据库: ```python DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), } } ``` 4. 创建模型 在`models.py`文件中定义博客文章的模型: ```python from django.db import models class Post(models.Model): title = models.CharField(max_length=200) content = models.TextField() created_at = models.DateTimeField(auto_now_add=True) ``` 5. 迁移数据库 使用以下命令创建数据库表: ``` $ python manage.py makemigrations $ python manage.py migrate ``` 6. 创建视图 在`views.py`文件中定义博客文章的视图: ```python from django.shortcuts import render from .models import Post def post_list(request): posts = Post.objects.all() return render(request, 'blog/post_list.html', {'posts': posts}) ``` 7. 创建模板 在`templates/blog`目录中创建一个`post_list.html`文件: ```html {% for post in posts %} <h2>{{ post.title }}</h2> <p>{{ post.content }}</p> {% endfor %} ``` 8. 配置URL 在`urls.py`文件中配置博客文章的URL: ```python from django.urls import path from . import views urlpatterns = [ path('', views.post_list, name='post_list'), ] ``` 9. 运行服务器 使用以下命令运行开发服务器: ``` $ python manage.py runserver ``` 现在你的博客系统已经可以运行了,访问`http://localhost:8000/`即可查看博客文章列表。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值