Django实战:搭建个人博客(一)
[TOC]
1. 配置软件环境
打开命令行,使用conda命令新建一个Python环境用于项目,并安装对应版本的Django:
安装成功:
打开Pycharm新建项目:
终端运行以下命令启动Django:
py manage.py runserver
打开默认的本地服务器地址看到以下页面表明Django启动成功:
2. 创建应用和数据库模型
终端运行:
py manage.py startapp blog
在项目根目录下生成了blog应用相关的文件:
新生成的应用还需要在settings.py中注册:
编写blog/models.py
,创建三个模型类Category
,Tag
和Post
:
from django.db import models
from django.contrib.auth.admin import User
# 所有模型都要继承models.Model以获得模型方法
class Category(models.Model):
name=models.CharField(max_length=20)
class Tag(models.Model):
name=models.CharField(max_length=20)
class Post(models.Model):
title=models.CharField(max_length=40)
createdTime=models.DateTimeField()
modifiedTime=models.DateTimeField()
body=models.TextField()
excerpt=models.TextField(max_length=400,blank=True) # 允许为空
category=models.ForeignKey(Category,on_delete=models.CASCADE) # 多对一关系;级联删除的策略
tag=models.ManyToManyField(Tag) # 多对多关系
author=models.ForeignKey(User,on_delete=models.CASCADE,blank=True)
终端依次运行命令进行数据库迁移:
py manage.py makemigrations
py manage.py migrate
创建管理员账户,按照提示输入用户名、邮箱等相关信息,保存好密码rick137:
py manage.py createsuperuser
在blog/admin.py
中注册数据库模型,以在管理界面显示:
from django.contrib import admin
from .models import Category,Tag,Post
# Register your models here.
admin.site.register(Tag)
admin.site.register(Post)
admin.site.register(Category)
再次运行py manage.py runserver
,这次进入http://127.0.0.1:8000/admin/
,输入刚刚设定的用户名和密码,若显示blog应用的数据库管理入口则成功:
可以通过管理入口在数据库中添加类别、文章等数据:
先写到这里,接下来开发页面的前端显示。