Я пытаюсь добавить UploadField в ModelAdmin, создав расширение после GridFieldList. Но я всегда получаю сообщение об ошибке «Вызов функции-члена FormAction () для необъекта в …. / framework / forms / FormField.php в строке 161». Я могу добавить TextField, DropdownField без каких-либо проблем, но не повезло с UploadField.
Я что-то пропустил?
<code>
class MyExtension extends Extension{
public static $has_one = array(
'ImportCSV' => 'File'
);
public function updateEditForm($form){
$fields = $form->Fields();
$fields->push(
new TextField('Title', 'Title')
);//This one works
$fields->push(
new UploadField('ImportCSV', 'Import CSV')
);//This one not working
}
}
</code>
Если вы пишете Extension
(В частности, DataExtension
) тогда вы бы использовали updateCMSFields($fields)
который передан экземпляр FieldList
по ссылке.
Но чтобы добавить UploadField
как я думаю, вы хотите, либо добавьте его в DataExtension
что расширяет (украшает) File
в вызове updateCMSFields()
или изменить extends Extension
в extends DataExtension
в вашем примере выше, и запустите dev/build flush=all
Других решений пока нет …