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

Reply via email to