我创建了这样一个用户类:
class User(UserMixin, db.Model):
###
avatar = db.Column(db.String(64), default='app/static/upload/default.jpeg')
用户上传头像如下(UPLOAD_DIR is app/static/UPLOAD):
^{pr2}$然后我检查了'uploads'目录并确认img在那里;我在shell中得到了这个:
>>> z.avatar
u'C:\\Users\Administrator\\Desktop\\weiboLITE\\app/static/uploads\\162421.jpg'
现在我运行服务器,发现图像无法显示。我的模板是这样的:
<div class="thumbnail">
<img src="{{ user.avatar }}" alt="Avatar not found.">
</div>
所以我想知道img应该以什么格式出现在Jinja2模板中。。。?或者我错了在哪里?请告知。在
你能提供一些额外的信息吗?用于呈现jinja2模板的路由的代码是什么?在
另外,看起来您还没有将新路径提交到数据库中—您应该在新的化身路径添加到用户对象后调用
db.session.commit()
,以确保新数据正确保存:如果要向jinja2模板发送一个新的用户对象,这一点很重要。当您在交互式shell中使用单个用户对象时,路由可能会被正确地保存,但是当您在路由中执行一个新的
User.query
并使用render_template()
将查询对象作为上下文发送到模板时,它就不正确了。在最后,应该使用
url_for()
调用图像位置。查看另一个post以获取指导。在祝你好运我希望这能帮上忙!在
相关问题 更多 >
编程相关推荐