You can try
update_or_insert()<http://web2py.com/books/default/chapter/29/06#update_or_insert>
.
Anthony
On Friday, December 7, 2012 5:54:58 PM UTC-5, Daniele wrote:
>
> I am unable to update entries in my database. I think I have an idea of
> why this may be, but I'm not sure how to go about fixing this.
>
> In my controller, I have:
>
> tform = SQLFORM.factory(
> Field('is_tutor', 'boolean'),
> *[f for f in db.tutor if f.name.startswith('t_')],
> table_name='tutor')
>
> if tform.process().accepted:
> if tform.vars.is_tutor:
> if not auth.has_membership('Tutors'):
> auth.add_membership('Tutors')
> db(db.tutor.user == auth.user_id).update(
> t_Hourly_Rate = tform.vars.t_Hourly_Rate,
> t_Image = tform.vars.t_Image,
> t_Qualifications = tform.vars.t_Qualifications,
> t_Subjects = tform.vars.t_Subjects,
> t_Location = tform.vars.t_Location,
> t_Biography = tform.vars.t_Biography
> )
> else:
> if auth.has_membership('Tutors'):
> auth.del_membership('Tutors')
> response.flash = T('Profile updated!')
> elif tform.errors:
> response.flash = T('There was an error with your submission')
>
>
> However, when I submit the form I am just getting a bunch of 'None' values. I
> think the problem may be that
> I'm trying to update db(db.tutor.user == auth.user_id) but if db.tutor.user
> does not exist, it is not being assigned
> the value of the currently logged in user (auth.user_id)
> How can I go about fixing this??
> Thanks
>
>
>
--