Как сохранить настройки приложения Django в базе данных или изменить на лету?

Есть ли у кого-нибудь предложения о том, как создать систему, которая позволяет мне изменять настройки на лету? Например, У меня есть текстовое поле, которое пользователи могут заполнить, и прямо сейчас он имеет максимальный лимит символов 1000. Когда-нибудь я, возможно, захочу изменить его на 500, 2000 или что-то еще. Поэтому я не хочу ограничивать саму модель, чтобы не пережить кошмар резервного копирования БД, запуска syncdb, повторного импорта БД, такого кошмара просто для изменения простого значения. Я бы предпочел проверить длину символа через Javascript или код views.py.

if (length > value_stored_somewhere)
 throw error message

Я думал, что могу просто поместить эти значения в settings.py или, возможно, в отдельный local-settings.py, но это означает, что если я хочу изменить значение, мне придется перезапустить приложение, верно? Или я могу ошибаться, поэтому скажите, пожалуйста, если я ошибаюсь.

Я подумал, что идеальный способ сделать это - поместить настройки в базу данных, чтобы администраторы могли изменять значения на лету, не касаясь каких-либо файлов .py. Я взглянул на django-dbsettings, но, похоже, там нет никакой активности.

Пожалуйста, дайте мне предложения и решения. Большое спасибо!

5
задан rabbid 25 April 2011 в 02:59
поделиться