Файл не записывается
Я работаю над веб-сайтом с django и в настоящее время пытаюсь добавить способ для пользователей загрузить файл на веб-сайт и просто для тестирования, чтобы он записывал на мой ПК.
Но проблема в том, что на мой рабочий стол ничего не записывается. Я не получаю никаких ошибок, просто ничего не записывается. Файл, с которым я тестирую, - это jpeg.
Функция:
def download_file(filename):
with open(r'C:\Users\kenco\OneDrive\Desktop\file.jpg', 'wb+') as destination:
destination.write(filename)
Вид django:
def file_form(request):
if request.method == 'POST':
form = file_uploader(request.POST,request.FILES)
if form.is_valid():
download_file(filename=request.FILES['file'])
return HttpResponseRedirect('/success')
else:
form = file_uploader()
return render(request, 'home_page.html', {'form' : form})
Форма:
from django import forms
class file_uploader(forms.Form):
question = forms.CharField(max_length=100)
image = forms.FileField()
Я попытался просто записать на рабочий стол, и это не сработало. Я пытался сделать строку без r. И я пытался записать его без .jpg
Этот код также основан на документации по django: https://docs.djangoproject.com/en/5.1/topics/http/file-uploads/
Я нашел ответ
Возникла проблема с моими ссылками
Он перешел от:
urlpatterns= [
path('home/', TemplateView.as_view(template_name="home_page.html"), name='home_page'),
path('forms/', views.file_form, name='file_form')
]
urlpatterns = [
path('admin/', admin.site.urls),
path('', TemplateView.as_view(template_name="home_page.html"), name='home_page'),
path('file/', include('home.urls'))
]
To:
urlpatterns = [
path('home/', TemplateView.as_view(template_name="home_page.html"), name='home_page'),
path('forms/', views.file_form, name='file_form'),
]
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('home.urls')),
]