silverstrip Object- & gt; __ call (): метод ‘fortemplate’ не существует в ‘HasManyList’ или метод не является общедоступным

Я получаю эту ошибку в шаблоне переднего плана, мой файл шаблона пуст,
когда я пытаюсь addFieldToTab, Я думаю $has_many переменная имеет проблему.

Мой код как ниже:

class ProductsPage extends Page
{
private static $has_many = array (
'ProductCategories' => 'ProductCategories',
);

public function getCMSFields() {
$fields = parent::getCMSFields();
$fields->addFieldToTab('Root.Main', GridField::create(
'ProductCategories',
'Category',
$this->ProductCategories(),
GridFieldConfig_RecordEditor::create()
));
return $fields;
}
}

Ошибка :

[Ошибка пользователя] Uncaught Exception: Object -> __ call (): метод
‘fortemplate’ не существует в ‘HasManyList’, или метод не
общественности.

URL PasteBin: https://pastebin.com/YZJn3a4t

когда я удален $has_many Переменная это работает идеально. в моем интерфейсе шаблон пуст.

как исправить эту ошибку я не понимаю?

2

Решение

Массив $ has_many значение должно быть в единственном числе, тогда как это ключ это множественное число.

В вашем примере это должно быть «Category» => «ProductCategories» (я понял это из того, что вы делаете с GridField ниже).

Надеюсь это поможет.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]