Лучшая практика: как сохранить простые данные без базы данных в Django? - PullRequest
0 голосов
/ 02 июня 2010

Я создаю веб-сайт, который не требует базы данных, потому что REST API "является базой данных".(За исключением того, что вы не хотите помещать туда специфичные для сайта вещи, поскольку API используются в основном мобильными клиентами)

Однако есть несколько вещей, которые обычно помещаются в базу данных, например,Страница "Работа".У вас есть основной вид списка и подробные виды для каждой работы, и должно быть легко добавлять новые записи о работе.(не обязательно через CMS, но это было бы здорово)

например, example.com/careers/ и example.com/careers/77/

Я мог бы просто жестко закодировать этот материал в шаблонах, но это не СУХО - вы должныобновляйте основной шаблон и подробный шаблон каждый раз.

Что вы, ребята, думаете?Может быть, файл YAML?Или есть идеи получше?Thx

Ответы [ 3 ]

5 голосов
/ 02 июня 2010

Почему бы не сохранить его в базе данных? В вашем удаленном REST-хранилище все хорошо, но если у вас есть локальные данные, нет ничего (если не оговорено в спецификации), что не позволит вам хранить некоторые вещи в локальной базе данных. Это не должно быть чарующе - может быть sqlite, или вы можете повеселиться с redis и т. Д.

2 голосов
/ 03 июня 2010

Вы можете использовать Memcachedb через интерфейс кеширования Django.

Например:

Установите бэкэнд кэша как memcached в настройках django, но вместо этого установите / используйте memcachedb .

Django не может определить разницу между ними, потому что они предоставляют один и тот же интерфейс (по крайней мере, в прошлый раз, когда я проверял).

Memcachedb является постоянным, безопасным для многопоточных серверов django и не будет терять данные при перезапуске сервера, но это просто хранилище значений ключей. не полная база данных.

1 голос
/ 02 июня 2010

Некоторые альтернативы, встроенные в библиотеку Python, перечислены в главе документации Постоянство данных . Еще один - JSON .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...