前后端不分离项目中,用 templates 和 semantic-ui 实现系统点赞、回复、关注通知页面
时间: 2023-12-06 12:44:35 浏览: 72
前后端不分离项目如何使用elementUI
在前后端不分离的项目中,可以使用 Flask 框架和 Jinja2 模板引擎来实现系统点赞、回复、关注通知页面。同时,可以使用 Semantic UI 框架来美化页面样式。
首先,在 Flask 应用中定义路由函数,例如:
```python
@app.route('/notifications')
def notifications():
# 获取当前用户的通知列表
notifications = get_notifications(current_user.id)
return render_template('notifications.html', notifications=notifications)
```
其中,`get_notifications` 函数可以根据当前用户的 ID 获取其未读的通知列表。
然后,在 `templates` 文件夹中创建 `notifications.html` 模板文件,例如:
```html
{% extends 'base.html' %}
{% block content %}
<div class="ui divided items">
{% for notification in notifications %}
<div class="item">
<div class="content">
<div class="header">{{ notification.title }}</div>
<div class="description">{{ notification.message }}</div>
{% if notification.type == 'like' %}
<div class="meta">点赞了你的文章</div>
{% elif notification.type == 'comment' %}
<div class="meta">评论了你的文章</div>
{% elif notification.type == 'follow' %}
<div class="meta">关注了你的账号</div>
{% endif %}
<div class="extra">{{ notification.created_at.strftime('%Y-%m-%d %H:%M:%S') }}</div>
</div>
</div>
{% endfor %}
</div>
{% endblock %}
```
在模板中,使用 Semantic UI 的 `items` 和 `item` 类来展示通知列表,使用 `header`、`description` 和 `meta` 类来分别展示通知的标题、内容和类型。同时,使用 Jinja2 的条件判断语句来确定通知的类型,从而展示不同的信息。
最后,可以在页面中添加点赞、回复、关注等操作的按钮,并使用 jQuery 或其他 JavaScript 库来实现相关功能。
阅读全文