# The origin of the requirement: i.e. whether it is fundamental or derived db.define_table('origin', Field('name', requires=IS_NOT_EMPTY()), Field('key', requires=IS_NOT_EMPTY()), format='%(name)s' )
# The category of the requirement db.define_table('kind', Field('name', requires=IS_NOT_EMPTY()), Field('key', requires=IS_NOT_EMPTY()), format='%(name)s' ) # The actual requirement object db.define_table('requirement', Field('title',requires=IS_NOT_EMPTY()), Field('body', 'text',requires=IS_NOT_EMPTY()), Field('rationale', 'text'), Field('preconditions', 'text'), Field('postconditions', 'text'), Field('traces_to', 'reference requirement',requires=IS_EMPTY_OR(IS_IN_DB(db, 'requirement.id', 'requirement.title'))), Field('origin', db.origin,requires=IS_IN_DB(db, 'origin.id', 'origin.name')), Field('kind', db.kind,requires=IS_IN_DB(db, 'kind.id', 'kind.name')), Field('is_safety_critical','boolean'), Field('updated_by', db.auth_user, default=auth.user_id, update=auth.user_id, readable=False, writable=False), Field('updated_on', 'datetime', default=request.now, update=request.now, readable=False, writable=False), format='%(title)s' ) # Put fake data in the requirements table from gluon.contrib.populate import populate if db(db.origin.id>0).count() == 0: populate(db.origin,5) db.commit() if db(db.kind.id>0).count() == 0: populate(db.kind,5) db.commit() if db(db.requirement.id>0).count() == 0: populate(db.requirement,50) db.commit() On Oct 19, 8:16 pm, BigBaaadBob <bigbaaad...@gmail.com> wrote: > I can reliably create this problem with a model that contains > "references xxx" and using populate. Trying to access the table in > the db manager causes the referenced error.