关联博客id
blog_id = db.Column(db.Integer, db.ForeignKey(“blog.id”))
关联用户id
user_id = db.Column(db.Integer, db.ForeignKey(“tb_user.id”))
blog = db.relationship(“Blog”, backref=“blog”)
user = db.relationship(“User”, backref=“use”)
页面基本模板实现
页面使用的是Jinja2模板,Jinja2支持页面继承,所以导航栏重复性的页面代码,我们都可以写在一个文件中。这里我们先创建一个base.html文件,编写页面大致的框架。其他模块直接继承使用即可。
{% block title %}
{# 其他页面可以重写标题 #}
{% endblock %}
{% block css %}
{% endblock %}
- 在线博客平台
{% if username %}
- 修改密码
{% endif %}
- 博客
- 关于
{% if username %}
{ { name }}
- 我的博客
- 我的评论
- 注销
- 写博客
{% else %}
- 注册
- 登录
{% endif %}
{% block content %}
{# 其他页面内容 #}
{% endblock %}
这里页面使用了Layui定义了一个导航栏,展示了对应的功能模块。其中{% if username %},username为后台存放在session中的一个键值对,用于判断用户是否登录了,有些功能登录后才显示。
base.html模板文件完成后,我们在定义一个index.html来做项目的首页,直接继承base.html。这样首页index.html就节省了很多代码。如下:
{% extends ‘base.html’ %}
{% block title %}
在线博客平台
{% endblock %}
{% block content %}
在线博客平台
{% endblock %}
首页效果如下: