It would help to have a smaller example to understand the problem better. Can you reproduce it with one table with 1-2 fields and one action?
On Apr 4, 5:30 am, szimszon <szims...@gmail.com> wrote: > Can I help with something? > > On márc. 30, 08:55, szimszon <szims...@gmail.com> wrote: > > > > > > > > > Any progress / comment? > > > On márc. 27, 22:04, szimszon <szims...@gmail.com> wrote: > > > > Hi! > > > > I use Version 1.94.6 (2011-03-27 18:20:38). > > > > I have in db: > > > ------------------------- > > > db.define_table( 'mail_domain', > > > Field( > > > 'domainname', 'string', > > > > > > label = 'Domain név', > > > > > > requires = IS_NOT_EMPTY() > > > > > > ), > > > signature, > > > migrate = > > > settings.migrate, > > > ) > > > db.define_table( 'mail_domain_alias', > > > Field( > > > 'mail_domain_id', db.mail_domain, > > > > > > label = 'Domain név', > > > > > > requires = IS_IN_DB( db, db.mail_domain.id, '% > > > (domainname)s' ), > > > > > > *********writable = False,********* > > > > > > ), > > > Field( 'alias', > > > 'string', > > > > > > label = 'Aliasz', > > > > > > requires = IS_NOT_EMPTY() > > > > > > ), > > > signature, > > > migrate = > > > settings.migrate, > > > ) > > > -------------- > > > > controller: > > > > ---------------- > > > def domain(): > > > form = crud.update( db.mail_domain, request.args( 0 ) ) > > > return dict( form = form ) > > > def domainalias(): > > > db.mail_domain_alias.mail_domain_id.default = > > > session.domainname_id > > > form = crud.update( db.mail_domain_alias, request.args( 0 ) ) > > > return dict( form = form ) > > > def setdomain(): > > > session.domainname_id = request.args( 0 ) > > > session.domainname = db( db.mail_domain.id == > > > session.domainname_id ).select( db.mail_domain.domainname > > > ).first().domainname > > > redirect( URL( 'default', 'index' ) ) > > > ----------------- > > > > If the session.domainname_id is set to a valid mail_domain record ID, > > > than the crud in domainalias shows the reference field as number and > > > not as domainname string. > > > > But if I remove the writable=False in mail_domain_alias table's > > > mail_domain_id field than I have a dropdown menu with the right record > > > selected as domainname and not as ID number. > > > > I think the right behavior would be if I set the writable = True that > > > I would see the right record not as ID but as %(domainname)s