Где и как вы храните системные настройки для своих проектов?
Наверняка многие сталкивались с таким вопросом.
Допустим на моем сайте есть несколько режимов работы (активный, тех. перерыв, спящий итд.), их можно переключать в админке.
Соответственно данные по настройкам нужно где-то хранить, и как вариант использовать таблицу в БД с одной строкой.
Которая выглядит так:
id | activeModeId | changedAt
И все, ради одной простой настройки пришлось создать целую таблицу. И таких таблиц может быть несколько, для различных, непересекающихся друг с другом настроек. Думаю, это не лучший подход.
Crash, тогда это что-то ваше хитровыдуманное должно быть.
технический перерыв еще понятно, просто всё вырубить допустим и на уровне вебсервера отдавать заглушку.
А вот спящий режим для сайта, это я даже придумать не могу что может быть.
допустим у меня по расписанию работает скрипт, которые берет данные с одного из нескольких источников и размещает их после некоторой доработки у меня в БД.
Его мне нужно периодически отключать, затем снова включать. Также менять источники, откуда он берет данные. Но при этом я не хочу лезть куда-то в код или файл крона. Я все хочу делать через админку. Соответственно мне нужно где-то хранить флаг, по которому скрипт будет ориентироваться, работать ему или нет и также нужно хранить информацию, с какого источника скрипту брать данные в данный момент времени.
Это все умещается в одну строку таблицы БД. Но специально создавать под это дело таблицу я считаю не комильфо и есть более изящное решение.
Странно, что вы меня до сих пор не поняли. Банальщина же.
Если может быть много источников, у каждого вкл/выкл кнопка, какие-то еще настройки появятся и т.д.
И это уже тянет на нормальную систему парсинга и админка соответсвенно должна быть какая-то.
И явно не одна таблица с одним столбцом.
Ну а крон постоянно должен работать, брать только то что включено в админке.