Модель SilverStripe Admin с дополнительной вкладкой
-
21-12-2019 - |
Вопрос
Я создаю модуль для SILVERSTRIPE, где настройки WebApp могут быть настроены, и где могут быть загружены значки / засветные экраны приложений. Для этого я использовал модель администратора для управления двумя DataObjects, содержащими экраны и значки / всплески.Это отлично работает.
Но теперь у меня есть некоторые дополнительные поля, которые я хотел бы управлять с одной и той же панели администратора («заголовок приложения», «полноэкранное приложение», «StatusBar» и «минимальный UI»).Было бы здорово, если можно добавить дополнительную вкладку к модели администратора, где я могу добавить эти поля, проблема:
- .
- Как сохранить эти значения
- Как мне создать эту дополнительную вкладку
Я также вижу возможности в расширении левопиской для этого, но затем я теряю возможности управления DataBject ModeAdmin.
Любые советы помогают бы очень оценены!
Решение
Дополнительные вкладки в ModelAdmin предназначены для объединения моделей - отсюда и название!Лучший способ строго соответствовать вашим потребностям в рамках основания будет иметь объект «appconfig», который инкапсулирует настройки вашего приложения и управлять им в том числе в этом ModelAdmin.Настройте отношения в других моделях для обозначения этих настроек.
private static $managed_models = array(/*other models*/, 'AppConfig');
.