留言板模型
- 一个用户可以有多个留言, 如果没有登录, 显示的是匿名留言
class MessageBoard(db.Model):
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
content = db.Column(db.String(255), nullable=False)
mdatetime = db.Column(db.DateTime, default=datetime.now)
user_id = db.Column(db.Integer, db.ForeignKey('user.id'))
user = db.relationship('User', backref='message')
模板
Searching...
{% endblock %}
{% block scripts %}
{{ super() }}
<script>
$(function () {
$('textarea[name="board"]').focus(function () {
$(this).val("")
})
})
</script>
{% endblock %}
函数
@user_bp.route('/board', methods=['GET', 'POST'])
def show_board():
msg_board = MessageBoard()
uid = session.get('uid', None)
user = None
if uid:
user = User.query.get(uid)
if request.method == 'POST':
content = request.form.get('board')
msg_board.content = content
if uid:
msg_board.user_id = uid
db.session.add(msg_board)
db.session.commit()
return redirect(url_for('user.show_board'))
else:
boards = msg_board.query.all()
return render_template('user/board.html', user=user, boards=None)
管理留言- 删除留言
@user_bp.route('/board_delete')
def del_board():
board_id = request.args.get('bid')
print()
msg_board = MessageBoard.query.get(board_id)
db.session.delete(msg_board)
db.session.commit()
return redirect(url_for('user.center'))
<td><a href="{{ url_for('user.del_board') }}?bid={{ board.id }}">删除留言</a></td>