Je crée une application Django et j'ai le problème suivant: cette erreur s'affiche lorsque je veux définir une date:
ValidationError [u"'12/06/2012' value has an invalid date format. It must be in YYYY-MM-DD format."]
Pour ce modèle:
class ModelA(models.Model):
date1 = models.DateField(null=True)
date2 = models.DateField(null=True)
Comment puis-je définir le format DateField sur %m/%d/%Y
.
L'option "input_formats"
n'est pas reconnu.
Merci!
Comme @bruno comme mentionné dans sa réponse, input_formats
est un champ de formulaires, mais il peut être utilisé pour contrôler le format de date enregistré à partir du modèle.
Dans settings.py
ensemble DATE_INPUT_FORMATS
comme ci-dessous:
DATE_INPUT_FORMATS = ['%d-%m-%Y']
Et dans votre formulaire, vous pouvez faire quelque chose comme ci-dessous:
class ClientDetailsForm(ModelForm):
date_of_birth = DateField(input_formats=settings.DATE_INPUT_FORMATS)
class Meta:
model = ModelA
input_formats
est un forms.DateField
option , pas un model.DateField
option. Vous devez le définir dans votre formulaire, pas dans vos modèles.