将媒体文件从views.py django渲染为html模板

发布于 2025-01-11 12:04:49 字数 1050 浏览 0 评论 0原文

我正在尝试将 view.py 中的图像显示到 jinga2 html 模板。 这是代码
models.py

class SkinModel(models.Model):
    pic=models.ImageField(upload_to='images',blank=True)

forms.py

class SkinForm(forms.ModelForm):
    class Meta:
        model=SkinModel
        fields = "__all__"

views.py

def home(request):
    if request.method=='POST':
        form = SkinForm(request.POST,request.FILES)
        if form.is_valid():
            img=form.cleaned_data['pic']
            if img:
                fs = FileSystemStorage()
                filename = fs.save(img.name, img)
                path = fs.url(filename)
                print(path)
                return render(request,'home.html',{'form':form,'path':path})

home.html

{% load static %}
<img src="{{ path }}" ,width="500" height="400">

打印语句显示的路径类似于 /media/bcc_38Mf6gh.jpg 但我不知道如何在 html 模板上渲染它

I am trying to show image from views.py to jinga2 html template.
Here is code
models.py

class SkinModel(models.Model):
    pic=models.ImageField(upload_to='images',blank=True)

forms.py

class SkinForm(forms.ModelForm):
    class Meta:
        model=SkinModel
        fields = "__all__"

views.py

def home(request):
    if request.method=='POST':
        form = SkinForm(request.POST,request.FILES)
        if form.is_valid():
            img=form.cleaned_data['pic']
            if img:
                fs = FileSystemStorage()
                filename = fs.save(img.name, img)
                path = fs.url(filename)
                print(path)
                return render(request,'home.html',{'form':form,'path':path})

home.html

{% load static %}
<img src="{{ path }}" ,width="500" height="400">

the print statement shows the path like /media/bcc_38Mf6gh.jpg but i dont know how to render it on html template

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

谎言 2025-01-18 12:04:49

安装 Pillow

pip install Pillow

然后将 .url 添加到路径:

{% load static %}
<img src="{{ path.url }}" ,width="500" height="400">

Install Pillow

pip install Pillow

And then add .url to path:

{% load static %}
<img src="{{ path.url }}" ,width="500" height="400">
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文