图像无法正常显示

时间:2020-06-15 18:44:22

标签: python django web backend

我在一个小型电子商务网站上工作。当我从自己的网站发布产品时,没有显示图片(图片),但是当我从管理面板发布时,显示了图片,所以我不为什么。我需要这方面的帮助。这是代码。 下面的代码来自model.py

class OrderedItem(models.Model):
    name = models.CharField(max_length=50)
    price = models.FloatField()
    image = models.ImageField(upload_to='pics')

    def __str__(self):
        return self.name

下面的代码来自views.py

def additem(request):
    if request.method == 'POST':
        stock_name = request.POST['stock_name']
        stock_price = request.POST['stock_price']
        stock_image = request.POST['stock_image']

        new_item = Stock(stock_name=stock_name, stock_price=stock_price, stock_image=stock_image)
        new_item.save()
        return redirect('/')
    else:
        return render(request, 'post.html')

下面的代码来自html页面

<form action="{% url 'additem' %}" method="post">
    {% csrf_token %}

    <div class="form-group">
        <input type="text" name="stock_name" id="" placeholder="stock_name">
    </div>
    <div class="form-group">
        <input type="text" name="stock_price" id="" placeholder="stock_price">
    </div>
    <div class="form-group">
        <input type="file" name="stock_image">
    </div>
    <div class="form-group">
        <input type="submit" value="Additem" class="btn btn-primary btn-lg">
    </div>
</form>

1 个答案:

答案 0 :(得分:1)

您需要在表单中添加enctype ='multipart / form-data',否则将不接受任何文件。

<form method="POST" action="" enctype='multipart/form-data'>

要获取在html文件中输入的图像

stock_image = request.FILES['stock_image']
相关问题