DataWhale六月组队学习-Django网站开发-Task2

本文档详细介绍了如何使用Django快速搭建一个博客系统,包括准备环境、创建站点、安装和配置Nginx与MySQL、创建Django项目和APP、编写页面逻辑、数据库操作以及前端渲染等步骤,最后在浏览器中查看并测试页面效果。
摘要由CSDN通过智能技术生成

准备工作

  1. 打开VScode,连接WSL,激活虚拟环境;
    在这里插入图片描述

  2. 查看宝塔面板地址;
    在这里插入图片描述

  3. 输入用户名和密码,登录宝塔面板;
    在这里插入图片描述

  4. 点击进入“软件商店”,查看是否已经安装了Nginx和MySQL,设置为首页显示;
    在这里插入图片描述

  5. 点击进入“网站”,添加站点,填写相关信息,点击“提交”;
    在这里插入图片描述

  6. 报错如下图所示:
    在这里插入图片描述
    解决方法:在终端中执行 sudo apt --fix-broken install在这里插入图片描述

  7. 成功创建站点;
    在这里插入图片描述

  8. 点击链接进入根目录,可以查看到四个文件;
    在这里插入图片描述
    在这里插入图片描述

  9. 查看Django版本,新建Django项目,将最外层文件夹改名为:MyBlog;
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  10. 进入项目所在文件夹,启动Django项目
    在这里插入图片描述
    在这里插入图片描述

创建APP

  1. 在终端执行命令:python manage.py startapp blog
  2. 将新建的APP和项目进行关联;
    (1)更改setting.py文件,在INSTALLED_APPS中添加创建的app名称;
    在这里插入图片描述
    (2)启动项目
    在这里插入图片描述
  3. 创建超级管理员
    (1)在终端执行同步命令:python manage.py migrate
    (2)创建超级管理员命令:python manage.py createsuperuser
    (3)在浏览器网址后面加上/admin,输入正确的用户名和密码;
    在这里插入图片描述
    (4)进入后台管理页面,可以看到已经创建的用户;
    在这里插入图片描述
  4. 修改后台语言和时区;
    在setting.py中找到LANGUAGE_CODE = 'en-us'更改为LANGUAGE_CODE = 'zh-hans'。同时可以修改时区,将TIME_ZONE = 'UTC'更改为TIME_ZONE = 'Asia/Shanghai'
    在这里插入图片描述
    在这里插入图片描述
  5. 在VS code中安装Django插件;
    在这里插入图片描述
  6. 创建表,修改models.py 文件;
from django.db import models

# Create your models here.

class Blog(models.Model):
    title = models.CharField(max_length=50, verbose_name="标题")
    content = models.TextField(verbose_name="文章内容", default="")
    count = models.IntegerField(verbose_name="阅读次数", default=0)
    creat_time = models.DateTimeField(auto_now=True, verbose_name="创建时间")
    

    class Meta:
        verbose_name = '博客管理'
        verbose_name_plural = verbose_name

    def __str__(self):
        return self.title
  1. 添加到后台:修改admin.py文件;
from django.contrib import admin

from .models import Blog
# Register your models here.

@admin.register(Blog)
class BlogAdmin(admin.ModelAdmin):
    list_display=("title", "creat_time", "count")
  1. 同步到数据库;
python manage.py makemigrations
python manage.py migrate
  1. 在浏览器查看Django管理的相关页面;
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

编写页面逻辑

  1. 编写前端页面以及渲染逻辑;
    (1)新建文件夹templates,用于存放html页面。
    在这里插入图片描述
    (2)修改setting.py文件:将'DIRS':[]更改为‘DIRS ': [os.path.join(BASE_DIR,"templates")],
    在这里插入图片描述
    注意要在setting.py文件最上方导入os库:import os
    (3)新建index.html
    在这里插入图片描述
    (4)修改views.py文件
    在这里插入图片描述
    (5)修改urls.py文件: 将我们定义的方法引入进来,然后定义好访问什么路径来执行这个方法;
    在这里插入图片描述
  2. 添加文章详情页面
    (1)新建content.html
<html>
    <head>
        <title>{{blog.title}}</title>
    </head>

    <body>
        <a href="/">回到首页</a>
        <h1>{{blog.title}}</h1>
        <div>
            {{blog.content}}
        </div>
        <div>
        由{{blog.author}}创建于{{blog.creat_time}}
        </div>
    </body>
</html>

(2)编写业务逻辑views.py

from django.shortcuts import render
from .models import Blog

# Create your views here.

def index(request):
    blogs = Blog.objects.all().order_by("-creat_time")
    return render(request,"index.html", {'blogs':blogs})

def read_blog(request,id):
    blog = Blog.objects.get(id=id)
    return render(request,'content.html',{'blog':blog})

(3)修改urls.py

from django.contrib import admin
from django.urls import path
from blog import views

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', views.index, name='index'),
    path('read_blog/<int:id>', views.read_blog, name='read_blog')
]

在浏览器查看页面显示效果

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值