
This fixes the problem of having to "hide" the update action in the row's actions column. Fixes bug 948397. Additionally, added some protection for spillover between the attrs dictionary on action instances. Fixes bug 954592. FWIW, the code involved in the AJAX updating is largely identical, it's just been moved from Action to Row and had few data accessors renamed to account for the differing relation to Table and Row. This also allowed the javascript to be significantly cleaner. Change-Id: Ic8932a33ca6956a56c8eee09bb0a4d1f59e0ab3a
83 lines
1.7 KiB
ReStructuredText
83 lines
1.7 KiB
ReStructuredText
==================
|
|
Horizon DataTables
|
|
==================
|
|
|
|
.. module:: horizon.tables
|
|
|
|
Horizon includes a componentized API for programmatically creating tables
|
|
in the UI. Why would you want this? It means that every table renders
|
|
correctly and consistently, table- and row-level actions all have a consistent
|
|
API and appearance, and generally you don't have to reinvent the wheel or
|
|
copy-and-paste every time you need a new table!
|
|
|
|
DataTable
|
|
=========
|
|
|
|
The core class which defines the high-level structure of the table being
|
|
represented. Example::
|
|
|
|
class MyTable(DataTable):
|
|
name = Column('name')
|
|
email = Column('email')
|
|
|
|
class Meta:
|
|
name = "my_table"
|
|
table_actions = (MyAction, MyOtherAction)
|
|
row_actions - (MyAction)
|
|
|
|
A full reference is included below:
|
|
|
|
.. autoclass:: DataTable
|
|
:members:
|
|
|
|
DataTable Options
|
|
=================
|
|
|
|
The following options can be defined in a ``Meta`` class inside a
|
|
:class:`.DataTable` class. Example::
|
|
|
|
class MyTable(DataTable):
|
|
class Meta:
|
|
name = "my_table"
|
|
verbose_name = "My Table"
|
|
|
|
.. autoclass:: horizon.tables.base.DataTableOptions
|
|
:members:
|
|
|
|
Table Components
|
|
================
|
|
|
|
.. autoclass:: Column
|
|
:members:
|
|
|
|
.. autoclass:: Row
|
|
:members:
|
|
|
|
Actions
|
|
=======
|
|
|
|
.. autoclass:: Action
|
|
:members:
|
|
|
|
.. autoclass:: LinkAction
|
|
:members:
|
|
|
|
.. autoclass:: FilterAction
|
|
:members:
|
|
|
|
.. autoclass:: BatchAction
|
|
:members:
|
|
|
|
.. autoclass:: DeleteAction
|
|
:members:
|
|
|
|
Class-Based Views
|
|
=================
|
|
|
|
Several class-based views are provided to make working with DataTables
|
|
easier in your UI.
|
|
|
|
.. autoclass:: DataTableView
|
|
|
|
.. autoclass:: MultiTableView
|