Add a line: def fpn0303_create(): table=db.fpn0303 crud.settings.keepvalues = True form=crud.create(db.fpn0303,onaccept=lambda form: show_id (form.vars.id)) response.flash=repr(form.errors) return dict(form=form)
to see why the data does not go in DB. There msut be an error that your custom form is not showing. On Nov 26, 8:21 am, Johann Spies <johann.sp...@gmail.com> wrote: > I have two nearly identical models fpn0302 and fpn0303. The only difference > is that the second one has a few extra fields. > > The forms are fairly complex so I make use of custom layouts to handle the > forms. > > fpn0302 works as expected while fpn0303' s data does not end up in the > database. > There are no error messages. > > The controllers for both are identical except for the reference to the > involved table. The views also. > > Both the models and views are to long to post in this email. The > controllers look like this: > > def fpn0302_create(): > table=db.fpn0302 > crud.settings.keepvalues = True > form=crud.create(db.fpn0302,onaccept=lambda form: > show_id (form.vars.id)) > return dict(form=form) > > def fpn0303_create(): > table=db.fpn0303 > crud.settings.keepvalues = True > form=crud.create(db.fpn0303,onaccept=lambda form: > show_id (form.vars.id)) > return dict(form=form) > > If I use fpn0303 with the crud-form ({{=BEAUTIFY(form)}}) the process works > as expected but I can not use that in production. There are to many layout > and label problems. > > How do I determine the data does not get inserted into the table (fpn0303)? > > The diff between the two views: > > $ diff fpn0302_create.html fpn0303_create.html > 3c3 > < <h2>FP Numeracy: Classroom visit form Grade 2 (FPN0302)</h2> > ---> <h2>FP Numeracy: Classroom visit form Grade 3 (FPN0303)</h2> > > 22c22 > < {{label=db((db.label.fieldname==veld) & > (db.label.form_id.lower()=='fpn0302')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > ---> {{label=db((db.label.fieldname==veld) & > > (db.label.form_id.lower()=='fpn0303')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > 66c66 > < {{label=db((db.label.fieldname==veld) & > (db.label.form_id.lower()=='fpn0302')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > ---> {{label=db((db.label.fieldname==veld) & > > (db.label.form_id.lower()=='fpn0303')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > 103c103 > < {{label=db((db.label.fieldname==veld) & > (db.label.form_id.lower()=='fpn0302')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > ---> {{label=db((db.label.fieldname==veld) & > > (db.label.form_id.lower()=='fpn0303')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > 140c140 > < {{label=db((db.label.fieldname==veld) & > (db.label.form_id.lower()=='fpn0302')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > ---> {{label=db((db.label.fieldname==veld) & > > (db.label.form_id.lower()=='fpn0303')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > 176c176 > < {{label=db((db.label.fieldname==veld) & > (db.label.form_id.lower()=='fpn0302')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > ---> {{label=db((db.label.fieldname==veld) & > > (db.label.form_id.lower()=='fpn0303')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > 211c211 > < {{label=db((db.label.fieldname==veld) & > (db.label.form_id.lower()=='fpn0302')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > ---> {{label=db((db.label.fieldname==veld) & > > (db.label.form_id.lower()=='fpn0303')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > 250c250 > < {{label=db((db.label.fieldname==veld[i]) & > (db.label.form_id.lower()=='fpn0302')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > ---> {{label=db((db.label.fieldname==veld[i]) & > > (db.label.form_id.lower()=='fpn0303')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > 289c289 > < {{for veld in [ 'q4_timea', 'q4_timeb', 'q4_timec', > 'q4_timed','q4_timee','q4_timef','q4_timeg','q4_timeh','q4_timei']:}} > ---> {{for veld in [ 'q4_timea', 'q4_timeb', 'q4_timec', > > 'q4_timed','q4_timee','q4_timef','q4_timeg','q4_timeh']:}} > 294c294 > < {{label=db((db.label.fieldname==veld) & > (db.label.form_id.lower()=='fpn0302')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > ---> {{label=db((db.label.fieldname==veld) & > > (db.label.form_id.lower()=='fpn0303')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > 316c316 > < {{label=db((db.label.fieldname==veld) & > (db.label.form_id.lower()=='fpn0302')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > ---> {{label=db((db.label.fieldname==veld) & > > (db.label.form_id.lower()=='fpn0303')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > 332c332 > < {{for veld in [ 'q4_capacitya', 'q4_capacityb', 'q4_capacityc']:}} > ---> {{for veld in [ 'q4_capacitya', 'q4_capacityb', 'q4_capacityc', > > 'q4_capacityd']:}} > 337c337 > < {{label=db((db.label.fieldname==veld) & > (db.label.form_id.lower()=='fpn0302')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > ---> {{label=db((db.label.fieldname==veld) & > > (db.label.form_id.lower()=='fpn0303')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > 353c353 > < {{for veld in ['q4_lengtha', 'q4_lengthb', 'q4_lengthc']:}} > ---> {{for veld in ['q4_lengtha', 'q4_lengthb', 'q4_lengthc', 'q4_lengthd', > > 'q4_lengthe', 'q4_lengthf']:}} > 358c358 > < {{label=db((db.label.fieldname==veld) & > (db.label.form_id.lower()=='fpn0302')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > ---> {{label=db((db.label.fieldname==veld) & > > (db.label.form_id.lower()=='fpn0303')).select(db.label.fieldlabel)[0].fieldlabel}}{{=label}}</div> > > Regards > Johann > -- > May grace and peace be yours in abundance through the full knowledge of God > and of Jesus our Lord! His divine power has given us everything we need for > life and godliness through the full knowledge of the one who called us by > his own glory and excellence. > 2 Pet. 1:2b,3a