On 28 January 2011 19:54, Massimo Di Pierro <massimo.dipie...@gmail.com>wrote:

> Something else is wrong. If you have requires=[...] it should not
> query the db for the possible references and it should not make the
> dropdown.
>
> Can we see the entire model?
>
>
I have posted the model for this table in an earlier message in this
thread.  Here it is again (as it is at the moment)  with the models of all
the other tables referenced:

db.define_table("artikel",
                Field("joernaal_id",
                      db.joernaal,
                      requires = [IS_IN_DB(db, db.joernaal.id,
                                          '%(titel)s')]#,
                      #widget =SQLFORM.widgets.autcomplete
                      ),
                Field("outeur_id", 'list:reference outeur'),
                Field("instansie_id", 'list:reference instansie'),
                Field("titel", "string", notnull=True),
                Field("opsomming", "text", notnull=True),
                Field("sleutelwoorde", "text", notnull=True),
                Field("vakgebied", "string", default=None),
                Field("publikasiejaar", "integer", default=None),
                Field("begin_bladsy",  default=None),
                Field("laaste_bladsy", default=None),
                Field("volume", "string", default=None),
                Field('uitgawe', default=None),
                Field('pub_tipe', default = None),
                Field("taal", "string",  default=None),
                Field("isi_indeks", default = None),
                Field("isap_indeks", default = None),
                Field("scopus_verwysing",
                      requires=IS_EMPTY_OR(IS_URL())),
                Field("dokument_tipe"),
                Field('ouid', 'integer',
                      requires = [IS_EMPTY_OR(IS_IN_DB(db,
'article.ouid'))]),
                signature)

db.artikel.joernaal_id.represent = lambda x: db.joernaal[x].titel
db.artikel.sleutelwoorde.represent=lambda x: XML(x,sanitize=True)
db.artikel.opsomming.represent=lambda x: XML(x,sanitize=True)
db.artikel.titel.represent=lambda x: XML(x,sanitize=True)
db.artikel.id.represent = lambda value: UL(
    LI(A(T('show(%d)' % value),_href=URL(r=request,c='default',
                             f='data/read/artikel', args=str(value)))),
    LI(A(T('edit'),_href=URL(r=request, c='default',
                             f='data/update/artikel', args=str(value))))
                             )

db.define_table("joernaal",
                Field("titel", "string", notnull=True, default=None),
                Field("issn", "string", default=None),
                Field("frekwensie", "string", default=None),
                Field("id_uitgewer", db.uitgewer,
                      requires = IS_EMPTY_OR(IS_IN_DB(db, db.uitgewer.id,
                                                      '%(besonderhede)s'))),
                Field("id_sa_goedgekeur_2009", db.erkende_joernale_2009,
                      default = None),
                Field("id_land", db.land,
                      requires = IS_EMPTY_OR(IS_IN_DB(db, 'land.id',
                                                      '%(naam)s'))),
                Field("vak_kategorie", db.isi_framework,
                      requires = IS_EMPTY_OR(IS_IN_DB(db, 'isi_framework.id
',

'%(level_4_categories)s'
                                                      ))),
                signature,
                format = lambda r: r.titel.capitalize() or "Unknown"
                )

db.define_table("instansie",
                Field("naam", "string", notnull=True, default=None),
                Field('akroniem'),
                Field("tersier", "boolean", default=False),
                Field("tipe", requires=IS_IN_SET(('University',
                                                  'University of
Technology(Technikon)',
                                                  'College',
                                                  'NGO',
                                                  'Research Institute',
                                                  'Government',
                                                  'Private Sector',
                                                  'Unknown'
                                                  ),
                                                 zero = None),
                      default='Unknown'),
                Field("notas", "text", default=None),
                Field("adres", "string", default=None),
                Field("e_pos", "string", requires =
IS_EMPTY_OR(IS_EMAIL())),
                Field("webblad", "string", requires =
IS_EMPTY_OR(IS_URL())),
                Field("id_land", db.land),
                signature,
                format = lambda r: r.naam or "Unknown",
                )

db.define_table("outeur",
                Field('ouid', 'integer'),
                Field("van", "string", notnull=True),
                Field("voorletters", "string", default=None),
                Field("name", "string", default=None),
                Field("e_posadres", "string",
                      requires=IS_EMPTY_OR(IS_EMAIL())),
                Field("webblad", "string",
                      requires=IS_EMPTY_OR(IS_URL())),
                Field("vakgebied"),
                Field("id_land", db.land),
                Field('ras', requires=IS_EMPTY_OR(
                    IS_IN_SET(['White', 'African', 'Coloured',
                               'Indian', 'Other', 'Unknown',
                               'W', 'A', 'C', 'I']))),
                Field('geslag', requires = IS_EMPTY_OR(
                    IS_IN_SET(['m','v']))),
                Field('geboortedatum', 'date',
                      requires = IS_EMPTY_OR(IS_DATE())),
                signature,
                format  = '%(voorletters)s %(van)s')

db.define_table('article',
    Field('ouid', type='integer'),
    Field('journal', type='string', length=255),
    Field('journal_id', 'integer', requires = IS_IN_DB(db,'journal.ouid')),
    Field('volume', type='string', length=20),
    Field('issue', type='string', length=20),
    Field('suplement', type='string', length=50),
    Field('extra_issue_info', type='string'),
    Field('begin_page', type='string', length=20),
    Field('end_page', type='string', length=20),
    Field('num_pages','integer'),
    Field('pub_type', type='string', length=50),
    Field('language', type='string', length=50),
    Field('isi_index_number', type='string', length=45),
    Field('isap_index_number', type='string', length=50),
    Field('publication_year', type='integer'),
    Field('map_id', type='integer'),
    Field('source_db', type='string', length=45),
    Field('authors_incomplete', type='integer'),
    signature)


I appreciate your attention to this problem.

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