I want to upload an image from a form without model. I've tried to make:
In the template: det.html
Upload image
<form enctype="multipart/form-data" action="" method="post">{% csrf_token %}
<input type="file" name="myfile" id="myfile" />
<input type="submit" value="Upload image">
</form>
In the views, I have:
def fileupload(request):
return responsewrapper('personne/det.html', locals(),request)
def handle_uploaded_file(f):
filename = file._get_name()
destination = open('/personne/static/personne/%s'%filename, 'wb+')
for chunk in f.chunks():
destination.write(chunk)
destination.close()
def submitfilecontent(request):
handle_uploaded_file(request.FILES['myfile'])
return HttpResponseRedirect("/successupload")
The error is: Method Not Allowed (POST): /fr/detect/
my urls:
urlpatterns += i18n_patterns(
url(r'^admin/', admin.site.urls, name="admin"),
url(r'^$', views.IndexView.as_view(), name="homepage"),
url(r'^detect/$', views.DetectView.as_view(), name="detection"),
url(r'^login/$', auth_views.login, name="login"),
url(r'^logout/$', auth_views.logout, name="logout"),
url(r'^register/',views.addUser, name='register'),
)+ i18n_patterns('', (r'^(?P<path>.*)$', 'django.views.static.serve', {'document_root': MEDIA_ROOT, 'show_indexes': True}))
Update:
in urls.py, I added:
url(r'^submitfilecontent/$', submitfilecontent, name="submit-file-content"),
in the template:
<form enctype="multipart/form-data" action="/submitfilecontent/" method="post">
The new error: MultiValueDictKeyError: "'myfile'"