Tabler Datagrid#
- class Datagrid(*items: Union[DatagridItem, Tuple[str, str], Tuple[str, str, Dict[str, Any]]], **kwargs)[source]#
Bases:
Block
This widget implements a Tabler Data grid It contains
DatagridItem
objects.Examples
Add
DatagridItem
objects to this in one of these ways:As constructor arguments:
>>> item1 = DatagridItem(title='foo', content='bar', url="https://example.com") >>> item2 = DatagridItem(title='baz', content='barney') >>> item3 = ['foo', 'bar'] >>> grid = Datagrid(item1, item2, item3)
By using
add_block
with aDatagridItem
:>>> grid = Datagrid(item1, item2, item3) >>> grid.add_block(DatagridItem(title='foo', content='bar'))
By using
add_item
:>>> grid = Datagrid(item1, item2, item3) >>> grid.add_item('foo', 'bar')
- Parameters:
*items – a list of
datagrid-item
definitions orDatagridItem
objects.
- add_item(title: str, content: Union[str, Block, List[Union[str, Block]]], url: Optional[str] = None, **kwargs) None [source]#
Add a
DatagridItem
to our block contents, withdatagrid-title
oftitle
and datagrid.Examples
Start with our grid:
>>> dg = DataGrid()
Add a simple key/value:
>>> dg.add_item('Version', '1.2.3')
Add a block as the value, and wrap it in a
wildewdigets.Link
:>>> dg.add_item( 'Gravatar', Image(src=static('myapp/images/gravatar.png'), alt='MyGravatar'), url='https://www.google.com' )
Add a list of blocks as the value:
>>> dg.add_item( 'Contributors', [ ImageLink( src=static('myapp/images/fred-gravatar.png', alt='Fred' url='https://www.fred.com' ), ImageLink( src=static('myapp/images/barney-gravatar.png', alt='Barney' url='https://www.barney.com' ) ], css_class='d-flex flex-row' )
Note
To add a
DatagridItem
directly, useadd_block
.- Keyword Arguments:
title – the
datagrid-title
of thedatagrid-item
content – the
datagrid-content
of thedatagrid-item
url – URL to use to turn content into a hyperlink
- class DatagridItem(*blocks, title: Optional[str] = None, url: Optional[str] = None, **kwargs)[source]#
Bases:
Block
This widget implements a Tabler datagrid-item It should be used with
Datagrid
.Note
Unlike
wildewidgets.widgets.base.Block
,DatagridItem
requires eithercontents
to be set, or the block contents to be provided as positional arguments.- Keyword Arguments:
title – the
datagrid-title
of thedatagrid-item
url – URL to use to turn content into a hyperlink
- Raises:
ValueError – either the
title
was empty, or no contents were providedImproperlyConfigured –
url
was set, and there is more than one block incontents
- add_blocks() None [source]#
Add our content.
If
url
is set, and there is only one block incontents
, wrap that block in awildewidgets.Link
.- Raises:
ImproperlyConfigured –
url
was set, and there is more than one block incontents