N2cms добавить страницу настроек
Я хочу добавить некоторые настройки, которые администратор сайта может изменить.
Вначале мне пришла в голову идея создать страницу N2, называемую настройками, и каждое свойство этой страницы является отдельной настройкой, и каждый раз, когда мне нужно получить настройки, мне приходится искать первую страницу N2 типа "Настройки".
Проблема с этим подходом заключается в том, что я не могу контролировать, сколько страниц настроек может добавить администратор, и может быть, он добавил более одного.
Так что еще одна идея пришла мне в голову. Создайте независимый контроллер и класс с именем settings и создайте соответствующую таблицу базы данных.
У кого-нибудь есть идеи получше?
3 ответа
Я думаю, что ваша вторая идея может быть лучше - пользовательский контроллер и таблица. Это если "настройки" не связаны с самим N2. Если это так, то я думаю, что N2, вероятно, предлагает способ сделать это.
Но если настройки, которые вы хотите предложить своему пользователю, не связаны с тем, как работает N2, я бы не стал беспокоиться об этом, а просто создал бы независимый контроллер, класс и соответствующую таблицу базы данных.
Добавьте свойства на стартовой странице. У вас всегда будет только одна стартовая страница.
Я бы пошел с вкладкой Настройки на корневой странице. Преимущества - вы можете получить его в кратчайшие сроки через N2.Find.Root, и он будет применяться ко всем стартовым страницам, которые у вас могут быть. Обратите внимание, что в последней рекомендуемой настройке N2 существует одна StartPage для каждого языка, поэтому настройки вашего сайта должны быть обязательно выше этих, применительно ко всем языковым веткам.
ИМХО, отдельная таблица была бы излишней для разумного количества настроек.