Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在Django中上载到imagefield_Javascript_Django - Fatal编程技术网

Javascript 如何在Django中上载到imagefield

Javascript 如何在Django中上载到imagefield,javascript,django,Javascript,Django,我可以在Django框架中创建我的对象,并直接从那里上传图像。 现在我想从HTML表单上传图像,而不是从Django框架上传更多。如何将图像从HTML上传到/media/文件夹 my models.py: class New(models.Model): news_title = models.CharField(max_length=100,blank=False,verbose_name="Titolo news") news_small_description = models.TextF

我可以在Django框架中创建我的对象,并直接从那里上传图像。 现在我想从HTML表单上传图像,而不是从Django框架上传更多。如何将图像从HTML上传到
/media/
文件夹

my models.py:

class New(models.Model):
news_title = models.CharField(max_length=100,blank=False,verbose_name="Titolo news")
news_small_description = models.TextField(default=None,null=True,blank=True,verbose_name="Descrizione breve")
news_description = models.TextField(default=None, null=True, blank=True, verbose_name="Descrizione")
news_image = models.ImageField(default=None, blank=True, null=True, verbose_name="Immagine")
news_date = models.DateTimeField(auto_now=True, null=True, verbose_name="Data news")
class Meta:
    verbose_name = "New"
    verbose_name_plural = "News"
my view.py POST API:

@api_view(['POST'])
def send_news(request):
    try:
        newstitle = get_param(request.POST, "newstitle", NOT_NONE)
        newssmalldescription = get_param(request.POST, "newssmalldescription", OPTIONAL)
        newsdescription = get_param(request.POST, "newsdescription", OPTIONAL)
        newsimage = get_param(request.POST, "newsimage", OPTIONAL)

        New.objects.create(
            news_title = newstitle,
            news_small_description = newssmalldescription,
            news_description = newsdescription,
            news_image = newsimage,
        )

        return HttpResponse("La tua novità è stata aggiunta correttamente.")

    except ValueError as ve:
        print(ve)
        return HttpResponseBadRequest(json.dumps({"error_message": str(ve)}), content_type='application/json')
    except Exception as e:
        print(e)
        return HttpResponseServerError(json.dumps({"error_message": str(e)}), content_type="application/json")
在我的html中,我向我的
send_news
API发送一个POST请求,唯一缺少的字段是
newsimage

但我不明白如何将一张图片从我的HTML页面收费到我的媒体文件夹。谢谢大家!

处理文件时,必须使用
request.FILES
而不是
request.POST

newimage=get_param(request.FILES,“newimage”,可选)

您是否制作了表单enctype=“multypart/form data”



我也有同样的问题。非常感谢。但是如何从html将图像发送到api函数?您是否尝试将api url添加到html中的表单
action
?我认为你需要解决这个问题。看起来你的表单也需要设置属性
enctype=“multipart/form data”
,就像这里说的:我得到的'Request'对象没有使用Request.FILES的属性'FILE'。。想法?你会同时上传图片吗?如果没有-它将抛出错误(没有这个错误,我通常使用
request.FILES.get(“myfile”)
-它返回None而不是error)。如果是-似乎您错误地配置了html表单。
 <form class="col" method="POST" enctype="multipart/form-data"action="{% url 'your_action' %}">