Django通过一个JSON对象中的模型变量显示一个静态图像



我一直在尝试使用Django在我的HTML中显示图像。

通常会显示静态文件

<img src="{% static 'user_profile_pics/pfp_2.jpg' %}" >

此图像静态文件已存储在my models.py中的变量picture中。

class Profile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
bio = models.TextField(max_length=500, blank=True)
picture = models.TextField(max_length=500)

用户选择他们想要选择的图像作为他们的配置文件图像。下面是views.py文件,配置文件定义具有请求JSON字典,变量picture被分配给模型配置文件。

@login_required
def profile(request):
profile = Profile.objects.get(user = request.user)
return render (request, "profile.html", {"userinfo": {'bio': profile.bio, 'picture': profile.picture}}) 

def register(request):
if request.method == 'POST':
first_name = request.POST['first_name']
last_name = request.POST['last_name']
username = request.POST['username']
email = request.POST['email']
password = request.POST['password']
confirm_password = request.POST['confirm_password']
bio = request.POST['bio']
picture = request.POST['picture']

if password==confirm_password:
if User.objects.filter(username=username).exists():
messages.info(request, 'Username is already taken')
return redirect(register)
elif User.objects.filter(email=email).exists():
messages.info(request, 'Email is already taken')
return redirect(register)
else:
user = User.objects.create_user(username=username, password=password, email=email, first_name=first_name, last_name=last_name)
user.save()

profile = Profile(bio=bio, picture=picture, user=user)
profile.save()

return redirect('login_user')

else:
messages.info(request, 'Both passwords are not matching')
return redirect(register)

else:
return render(request, 'registration.html')

接下来,在个人资料html中显示个人简介和图片的工作原理如下:

<div id = "userprofiletext">
{% if user.is_authenticated %}
<a class="text" >Your Description is: , {{bio}}</a>
<img src= {{userinfo.picture}} />
{% endif %}
</div>

在实现JSON之前,生物设法显示。我认为必须在HTML中做一些事情才能显示它,并且需要一些帮助。在我的页面上显示的图片不注册,但调试时很明显,"图片"是图片文件链接。页面上的图片永远不会显示。

我试图找出显示的生物和图片,因为他们已经正确地传递到模型。在我的HTML文件页面顶部也有一个django加载静态行。

编辑:

在这张图片中一切看起来正常,但它仍然不显示?

形象

{{userinfo.picture}}放入双引号

<img src="{{userinfo.picture}}" />

相关内容

  • 没有找到相关文章

最新更新