从
ModelAdmin
迁移到 PageListingViewSet
时,我注意到在定义不带 title
的 PageListingViewSet
或添加带有 columns
的 columns
时,页面 PageTitleWidget
列的默认样式有所不同:
由于经常出现我们想要为
PageListingViewSet
定制列的情况,美学上的不一致变得越来越明显,并导致令人困惑的用户体验。
如何定义与默认
PageListingViewSet
title
显示具有相同美感的“页面标题”列?
检查
PageTitleColumn
生成的源代码与未定义列的 PageListingViewSet
生成的源代码时,包装页面标题小部件的 class="title"
上似乎缺少 td
。
columns
)<td class="title" data-listing-page-title="">
<div class="title-wrapper">...</div>
<ul class="actions">...</ul>
</td>
PageTitleWidget
<td data-listing-page-title="">
<div class="title-wrapper">...</div>
<ul class="actions">...</ul>
</td>
事实证明,在 classname="title"
s 的
PageTitleColumn
属性中定义 columns
实例时,不应用 default
PageListingViewSet
。所以,解决办法如下:
PageTitleColumn(
"title",
label="Title",
sort_key="title",
# make sure to define the classname="title"
classname="title",
),