flask web第11章节遇到的问题?博文表单不显示出来
关注者
9被浏览
1,0762 个回答
照着@浮岑说的可以解决,需要注意一下:
1. 主要是因为在Role没有建立起来的时候(此时在python manage.py shell中,执行Role.query.all()应该得到的是[]),你就先注册了用户,那么此时你的用户角色肯定什么都不是。 故无法显示表单或者文章列表;
因此你需要:首先在python manage.py shell中执行Role.insert_roles(), 查询Role.query.all()之后确保得到的结果是[<Role...><><>],之后再注册用户;
2. 如果你之前的db中已经包含了你的邮箱或用户名,那么请现在shell中执行
from manage.py import db
db.drop_all()
db.create_all()
之后再重复第一步,截图为证:
可以把indexhtml里面的{% if current_user.can(Permission.WRITE_ARTICLES)%}写成{% if current_user.is_adminstrator %},实现了管理员可以看见发表文章