Bonjour,
Tout d'abord je suis un débutant.

J'aimerai savoir comment autoriser l'insertion d'une NULL dans un champ CharField.

Dans mon exemple je dois pouvoir insérer un enregistrement en laissant le champ "nomfichier" vide.
Comment faire?

Voici ma classe:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
class Projet(models.Model):
    donnee = models.ForeignKey(Donnee)
    id_fedora = models.CharField(max_length=50, blank=True)
    code = models.CharField(max_length=50)
    label = models.CharField(max_length=250)
    datecreation = models.DateField('date published')
    nomfichier = models.CharField(max_length=250, null=True, blank=True)
 
    def __unicode__(self):
        return self.label

Voici ma vue pour l'insertion d'un nouveau record:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
def detailneuf(request):
    if request.method == "POST":
        vl_monform = ProjetForm(request.POST)
 
        vl_monform.save()
 
        return redirect('/projets/forms/new/')
    else:
        vl_monform = ProjetForm()
 
        return render_to_response('projects/newprojet.html', {'pe_monform': vl_monform},
                                  context_instance = RequestContext(request))
Et voici mon form:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
class ProjetForm(ModelForm):
    code = CharField(widget = TextInput(attrs = {'size': 20}), label = 'Project Code')
 
    label = CharField(widget = Textarea(attrs = {'cols': 25, 'rows': 10}), label = 'Project Label')
 
    nomfichier = CharField(widget = TextInput(attrs = {'size': 70}), label = 'File Name')
 
    datecreation = DateField(widget = CalendarWidgetJquery, label = 'Creation Date')
 
    class Meta:
        model = Projet
 
        fields = ('donnee', 'code', 'datecreation', 'label', 'nomfichier')
Lorsque j'essai d'insérer un record en laissant la colonne "nomfichier" vide, j'ai le message suivant:
"The Projet could not be created because the data didn't validate", par contre si dans mon form je supprime la colonne "nomfichier" j'arrive à insérer mon record dans ma BD.

Je ne comprends rien :-(

Merci d'avance pour votre aide.