1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
"""mapper & fields/adding field in mask
A field can be added to a mask as well
"""
from sqlkit import fields
from sqlkit.widgets.table import columns
from sqlkit.db.utils import DictLike
class CountMovies(fields.IntegerField):
"""
A field that counts the movies
"""
@fields.std_cleanup
def clean_value(self, value):
## missing a field_name attribute on obj the objct itselt is passed
return len(value.movies)
LAYOUT = """
last_name
n_movies
"""
t = SqlMask(model.Director, dbproxy=db, layout=LAYOUT,
gui_field_mapping = {'n_movies' : CountMovies}
)
t.reload()
|