certflow.views.bases.lookup_table_manager_view module¶
通用对照表管理界面基类
把「材质牌号 / 口径映射 / 型号→压力」等基础字典表的 CRUD 维护界面统一到 一套**列定义驱动 + 共享控件**的框架中,避免每个表重复手写工具栏、表格、 增删改与编辑表单。
共享控件(certflow.widgets):
- ActionToolbar:按钮簇工具栏(按内容定宽)
- EnhancedTable:列元数据 → 表头 + 选择/编辑行为 + 列头点击客户端排序
- FilterBar:统一条件契约的字段级筛选条
- ConfirmDialog:危险操作二次确认
- DialogButtonBar:确认 / 取消按钮栏
字段类型(field_type):
- text 普通文本(QLineEdit)
- int 整数(空→None;必填时空值抛 ValueError)
- float 浮点数(同上)
- bool 布尔(QCheckBox,可设 default)
- choice 下拉单选(QComboBox,choices 列表,可含空串表示允许为空)
使用方式:子类只需声明 _COLUMNS``(表格列)与 ``_EDIT_FIELDS``(编辑表单),
并提供一个实现标准 CRUD 接口的控制器(``list_all / get_by_id /
create / update / delete / close)即可。
- class certflow.views.bases.lookup_table_manager_view.ColumnSpec(header, field, editable=True, field_type='text')[源代码]¶
基类:
object表格列定义。
- class certflow.views.bases.lookup_table_manager_view.FieldSpec(field, label, field_type='text', placeholder='', choices=None, required=False, empty_as_none=False, default=None)[源代码]¶
基类:
object编辑表单字段定义。
- 参数:
- default¶
bool 类型的默认勾选值;其他类型暂未使用
- Type:
Any
- class certflow.views.bases.lookup_table_manager_view.LookupRecordEditDialog(edit_fields, record=None, title='编辑记录', parent=None)[源代码]¶
基类:
QDialog通用编辑子对话框(新增/编辑共用),由
FieldSpec列表驱动构建表单。- staticMetaObject = PySide6.QtCore.QMetaObject("LookupRecordEditDialog" inherits "QDialog": )¶
- class certflow.views.bases.lookup_table_manager_view.LookupTableManagerView(*, controller, columns, edit_fields, title, window_title=None, extra_actions=None, dict_key=None, quick_filters=None, table_key=None, parent=None)[源代码]¶
基类:
QDialog通用对照表管理对话框(列定义驱动 + 共享控件)。
子类通过传入
controller/columns/edit_fields/title即可获得完整的「工具栏 + 表格 + 增删改 + 编辑表单」能力,无需重复造轮子。- 参数:
- staticMetaObject = PySide6.QtCore.QMetaObject("LookupTableManagerView" inherits "QDialog": )¶