Hi,

I have a problem with the represent functionality. In version 1.89.1
it was working fine, but then i updated to 1.89.4 and now to 1.89.5 (I
don't know if it happens on .2 and .3), and it doesn't works.
Moreover, the fields with the "reference", now show the id of the
table instead the format that i have specified.

I don't know if the represent functionality has changed since 1.89.1
or i'm doing something wrong.

One example is this:

############### begins code ####################
@auth.requires_login()
def index():
    # Clean user acl
    vip_user.clean_project()

    # Prepare user's desktop by profile in application
    if vip_user.is_admin:
        response.menu += admin_menu
        db.project_card.id.represent = lambda id: DIV(A(T("Team"),
_href=URL(r=request, c='project_team', f='index', args=(id))),"
",A(T("Services"), _href=URL(r=request, c='project_service',
f='index', args=(id))))
        query = None
    else:

        db.project_card.id.represent = lambda id: DIV(A(T("Work"),
_href=URL(r=request, c='project', f='index', args=(id)))," ",
A(T("Card"), _href=URL(r=request, c='project_card', f='read',
args=(id))))
        query=((db.project_card.id==db.project_team.project) &
(db.project_team.user==vip_user.id))

    form = crud.select(db.project_card,
                       query = query,
                       fields = ['project_card.id',
'project_card.name',  'project_card.title',  'project_card.type',
'project_card.status',  'project_card.start_date',
'project_card.end_date' ],
                       headers = {'project_card.id': T("Actions"),
'project_card.name': 'Nombre',  'project_card.title': 'Título',
'project_card.type': 'Tipo',  'project_card.status': 'Estado',
'project_card.start_date': 'Inicio',  'project_card.end_date':
'Finalización' })

    return dict(form=form, user=vip_user)

############### ends code ####################


And the table is defined like this:

############### begins code ##################

db.define_table('project_card',
    Field('name', 'string', length=50, required=True, notnull=True,
label=T('Nombre')),
    Field('title', 'string', length=200, required=True,
label=T('Título')),
    Field('type', 'reference project_type', required=True,
label=T('Tipo')),
    Field('private', 'reference privacity', required=True,
label=T('Privacidad')),
    Field('status', 'reference project_status', required=True,
label=T('Estado')),
    Field('description', 'text', required=True,
label=T('Descripción')),
    Field('start_date', 'datetime', required=True, label=T('Inicio')),
    Field('end_date', 'datetime', required=True,
label=T('Finalización')),
    Field('objetive', 'text', label=T('Alcance')),
    Field('resume', 'text', label=T('Resumen')),
    Field('url', 'string', length=400, label=T('Url')),
    format='%(name)s')

############### ends code ####################


Regards

Reply via email to