Поле изображения в формах Django не работает
html файл:
<html>
<head>
<title> Sign Up</title>
</head>
<body>
<form method = "post", action = "/signup/",enctype="multipart/form-data" >
{% csrf_token %}
{{form.as_p}}
<button type = "submit", name = "save" >Save</button>
<button onclick="location.href = '/'">Home</button>
{% if usernameExists %}
<h3> Username already exists!</h3>
{% elif not passwordConfirmed %}
<h3>Passwords do not match!</h3>
{% endif %}
</form>
</body>
</html>
urls.py:
urlpatterns = [
path("",views.index,name = "index"),
path("signup/",views.signup,name = "signup"),
path("login/",views.login,name = "login"),
]
urlpatterns+=static(settings.MEDIA_URL, document_root =settings.MEDIA_ROOT )
settings.py:
STATIC_URL = 'static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static")
]
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'
forms.py:
class SignUp(forms.Form):
is_doctor = forms.BooleanField(label = "Are you a doctor?",required=False)
f_name = forms.CharField(label = "First Name", max_length=200)
l_name = forms.CharField(label="Last Name",max_length=200)
username = forms.CharField(label = "Username",max_length = 100)
email = forms.CharField(label = "Email",max_length=200)
profile_pic = forms.FileField(label= "Profile Picture", widget = forms.ClearableFileInput(attrs={'class':'form-control'}),required=False)
password = forms.CharField(label ="Password",max_length=200)
confirm_password = forms.CharField(label = "Confirm Password",max_length=200)
address = forms.CharField(label="Address",max_length = 400)
views.py:
form = SignUp(response.POST,response.FILES)
В html-файле у меня есть атрибут: enctype="multipart/form-data"
Я не могу понять, что еще мне нужно сделать. Я прочитал так много документов и просмотрел так много видео. Все они говорят одно и то же.
добавили ли вы {% load_static %} в свой шаблон?