我在一个小型电子商务网站上工作。当我从自己的网站发布产品时,没有显示图片(图片),但是当我从管理面板发布时,显示了图片,所以我不为什么。我需要这方面的帮助。这是代码。 下面的代码来自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>
答案 0 :(得分:1)
您需要在表单中添加enctype ='multipart / form-data',否则将不接受任何文件。
<form method="POST" action="" enctype='multipart/form-data'>
要获取在html文件中输入的图像
stock_image = request.FILES['stock_image']