martes, 3 de junio de 2014

Ocultar Campos de un SQLFORM.grid web2py

Para ocultar campos en un new, es decir, cuando agregamos un registro en un grid:

def test():
    if 'new' in request.args:
        db.tabla.campo.default = 'texto'
        db.tabla.campo.writable = False
        db.tabla.campo.readable = False
    grid = SQLFORM.grid(db.tabla)
    return dict(grid=grid)
 En este ejemplo, el campo toma por defecto el valor 'texto' y lo oculta en el grid.
El campo default, es opcional, en el caso que queramos que el campo lleve algún valor.

Lo mismo si queremos ocultar un campo en el edit, es decir a la hora de editar un registro del grid:

def test():
    if 'edit' in request.args:
        db.tabla.campo.default = 'texto'
        db.tabla.campo.writable = False
        db.tabla.campo.readable = False
    grid = SQLFORM.grid(db.tabla)
    return dict(grid=grid)

Y en la vista:

 def test():
    if 'view' in request.args:
        db.tabla.campo.default = 'texto'
        db.tabla.campo.writable = False
        db.tabla.campo.readable = False
    grid = SQLFORM.grid(db.tabla)
    return dict(grid=grid)

No hay comentarios: