html - 在导航栏中显示个人资料图像
问题描述
我正在建立自己的博客网站。
我设法让用户上传他们自己的个人资料图片并将其显示在他们的帖子旁边,但现在我希望将相同的图像作为个人资料图像显示在导航栏中,但是当我这样做时,我以同样的方式处理帖子它不起作用,看起来像这样。
对于帖子,我制作了个人资料图像模型并从 html 文件中访问了变量,但相同的方法不适用于在导航栏中显示它。
我正在使用 python 和 django 作为后端。
这是我的个人资料图像的模型代码:
from django.db import models
from django.contrib.auth.models import User
from PIL import Image
class Profile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
image = models.ImageField(default="default.jpg", upload_to="profile_pics")
def __str__(self):
return f"{self.user.username} Profile"
def save(self, *args, **kwargs):
super().save(*args, **kwargs)
img = Image.open(self.image.path)
if img.height > 300 or img.width > 300:
output_size = (300, 300)
img.thumbnail(output_size)
img.save(self.image.path)
这就是我在我的 html 文件中引用它以显示在帖子旁边的方式:
<img class="rounded-circle article-img" src="{{ post.author.profile.image.url }}" id="img">
当我使用任何其他图像(来自 url 或本地文件)时,它可以正常工作,但是当我使用该变量调用图像时,它不起作用
值得一提的是,导航栏和帖子部分位于不同的 html 文件中。看起来导航栏的 html 文件无权访问该变量?
我究竟做错了什么?
解决方案
尝试这个:
<img class="rounded-circle article-img" src="{{ request.user.profile.image.url }}" id="img">
推荐阅读
- mongodb - 更新 MongoDb 集合而不重写它
- python - python模块的命令行界面
- java - 递归 - 括号分数
- reactjs - 使用钱包的付款请求按钮时,reactjs中出现条纹飞行错误
- apache - 如何在apache反向代理后面重写图像url
- python - Python字典匹配键的任何元素
- smtp - Tcl/Tk 使用 smtp 和 mime 发送电子邮件,附件不显示附加文件名
- python - 为什么我的 twitter 天气机器人应用程序中的列表索引超出范围
- r - 如何将 R^2 值和 p 值添加到每个图表的每个回归线?
- apache-kafka - 使用压缩主题中止 Kafka 事务