Hello,

I'm trying to pass a the id of the user logged in to a form field, but it
doesn't seem to work... any ideas / suggestions?

Thanks in advance :)

Here are the view, model and form objects:

View:

def punts_form3(request):

        if request.method == 'POST':
              form = form_puntsn3(request.POST, request.FILES)
              form.autor_id = request.session['_auth_user_id']  --> I get an
error message ""Column 'autor_id' cannot be null")"
              if form.is_valid():
                form.save()
                return HttpResponseRedirect(".")

        else:

            form = form_puntsn3()

        t = loader.get_template('htmls/punts_form3.html')

        c = Context({
              'form': form,
          })
        return HttpResponse(t.render(c))

Model:

class puntmanager(models.Manager):
    def create_punt(self,lat,lng,descr,erico,precisio,autor,quan,esvalid):
        punt_nou =
self.model(None,lat,lng,descr,erico,precisio,autor,quan,esvalid)
        punt_nou.save()
        return punt_nou

class puntsn3(models.Model):
    lat = models.FloatField(max_digits=16, decimal_places=14)
    lng = models.FloatField(max_digits=16, decimal_places=14)
    #imatge = models.ImageField(upload_to='img', blank=True, null=True)
    descr = models.TextField('Desc', maxlength=500,blank=True, null=True)
    erico = models.CharField(maxlength=1, choices=TIPUS_ERICONS)
    precisio = models.CharField(maxlength=1, choices=NIV_PREC)
    autor = models.ForeignKey(User)
    quan = models.DateField()
    esvalid = models.BooleanField(default='0',editable=False)
    objects = puntmanager()

class form_puntsn3(newforms.Form):
    lat = newforms.IntegerField()#max_digits=16, decimal_places=14)
    lng = newforms.IntegerField()#max_digits=16, decimal_places=14)
    #imatge = newforms.Field(widget=newforms.FileInput())
    descr = newforms.CharField()
    erico = newforms.ChoiceField(choices=TIPUS_ERICONS)
    precisio = newforms.ChoiceField(choices=NIV_PREC)
    autor = newforms.IntegerField(required=False)
    quan = newforms.DateField(initial='2008-01-01',
widget=SelectDateWidget(years=range(2010, 2005, -1)))
    esvalid = newforms.IntegerField(required=False)
    def save(self):
        nou_obj = puntsn3.objects.create_punt(lat=self.clean_data['lat'],
                                        lng=self.clean_data['lng'],
                                        descr=self.clean_data['descr'],
                                        erico=self.clean_data['erico'],

precisio=self.clean_data['precisio'],
                                        autor=self.clean_data['autor'],
                                        quan=self.clean_data['quan'],
                                        esvalid=self.clean_data['esvalid']
                                        )
        return nou_obj



-- 
Genis

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to