我第一次尝试使用 GridField 组件。我使用 GridFieldConfig_RecordEditor 添加了一个“添加”按钮,如下所示:
class AdvertisersPage extends Page
{
//...
public function getCMSFields()
{
$fields = parent::getCMSFields();
$advertiserAccounts = AdvertiserAccount::get();
$fields->addFieldToTab('Root.Advertisers',
$gridField = new GridField(
'Advertisers',
'All advertisers',
$this->Advertisers(),
GridFieldConfig_RecordEditor::create()
)
);
return $fields;
}
}
但是该按钮除了更改浏览器中的 URL 从
管理员/页面/编辑/显示/7
至
admin/pages/edit/EditForm/7/field/Advertisers/item/new
这是相关的 DataObject 类:
class AdvertiserAccount extends DataObject
{
//...
private static $has_one = [
'AdvertisersPage' => AdvertisersPage::class,
];
public function getCMSFields()
{
$fields = FieldList::create(
TextField::create('contactNumber'),
TextField::create('nickname')
);
return $fields;
}
}
我需要你的建议,我应该如何解决这个问题。