SilverStripe LeftModelAdmin列表视图未显示所有列

时间:2019-05-19 10:24:10

标签: silverstripe

我正在开发SilverStripe项目。我是SilverStripe的新手。现在,我正在使用LeftModelAdmin在管理面板中显示具有菜单项的数据列表。但是我的列表视图没有显示所有列。相反,它仅显示一列。这是我到目前为止所做的。

这是我的模型课

namespace {

    use SilverStripe\ORM\DataObject;

    class ContactFormSubmission extends DataObject
    {
        private static $db = [
            'Name' => 'Varchar',
            'Email' => 'Varchar',
            'Message' => 'Text',
        ];
    }
}

这是我的模型的ModelAdmin类

namespace {

    use SilverStripe\Admin\ModelAdmin;

    class ContactFormSubmissionAdmin extends ModelAdmin
    {
        private static $menu_title = 'Enquiries';

        private static $url_segment = 'enquiries';

        private static $managed_models = [
            ContactFormSubmission::class,
        ];

        private static $summary_fields = [
            'Name' => 'Name',
            'Email' => 'Email',
            'Message' => 'Message',
        ];
    }
}

当我在管理面板中查看列表视图时,仅在管理面板中看到一列,如下面的屏幕截图所示。

enter image description here

我的代码有什么问题?

1 个答案:

答案 0 :(得分:2)

summary_fields配置属于模型,而不是模型admin。

尝试移动:

private static $summary_fields = [
    'Name' => 'Name',
    'Email' => 'Email',
    'Message' => 'Message',
];

到您的模型(ContactFormSubmission)。