Админ Django и MongoDB, возможно вообще? - PullRequest
19 голосов
/ 18 августа 2010

Я создаю простой сервис коротких URL-адресов, как правило, для использования нашей компанией. И я хотел бы использовать mongodb для хранения данных, но мне понадобится какой-то простой интерфейс для добавления / редактирования коротких URL-адресов в сопоставления длинных URL-адресов.

Документы на монго будут очень простыми, что-то вроде этого:

{
  shortUrlSlug: 'pbbs',
  fullUrl: 'http://example.com/peanut/butter/and/bacon/sandwiches/'
}

Есть ли что-нибудь, что предоставляет простой mongodb интерфейс администратора "CRUD", который можно интегрировать с django, где вы можете указать модель? В основном как администратор django, но без базы данных SQL.

Спасибо!

Ответы [ 7 ]

11 голосов
/ 28 января 2011

Я подтвердил, что проект django-nonrel поддерживает интерфейс администратора. У меня возникла проблема, когда SITE_ID по умолчанию был выбран в качестве числа, что недопустимо в качестве первичного ключа в MongoDB. Я решил это, установив:

SITE_ID = '4d421623b0207acdc500001d'

в моих settings.py

Я получил номер, напечатав идентификатор первого значения сайта в коллекции через оболочку.

Я не тестировал это подробно, но зарегистрировал администратора для объекта Poll и вижу, как он работает.

9 голосов
/ 10 марта 2011

Я использовал django-nonrel с mongodb-engine , и он работает хорошо.Администратор Django также работает со стандартными полями модели.Но если вы используете listfield и dictfield, вам придется взломать.

2 голосов
/ 18 августа 2010

Я не уверен, но django-nonrel и серверная часть mongodb могут поддерживать администратора django в настоящее время ... возможно, стоит посмотреть на

http://www.allbuttonspressed.com/projects/django-nonrel

1 голос
/ 20 июля 2016

django-nonrel - это форк django, и он не обновлялся более года. django-mongonaut и django-mongoadmin являются пакетами django и, вероятно, лучше подходят.

1 голос
/ 06 июля 2014

Это старый вопрос, но если кто-то сталкивается с той же проблемой сегодня, я думаю, что его лучшая ставка будет http://humongous.io. Это интерфейс, подобный django-admin для mongoDB.Он знает, как угадать / разобраться с отношениями, и работает как администратор Django.

0 голосов
/ 20 ноября 2017

Django Admin ОЧЕНЬ возможен с MongoDB. Вы смотрели в проект Djongo ?

Djongo - это компилятор запросов SQL в MongoDB. Он переводит каждую строку запроса SQL в документ запроса mongoDB. В результате

  • Все модели Django и связанные с ними модули работают как есть.
  • Используйте графический интерфейс администратора Django для добавления внедренных документов MongoDB.
  • Djongo предоставляет расширения API для Django ORM, которые позволяют вам «встраивать» один документ в другой, например MongoEngine.

Есть статья о Использование Django с MongoDB путем добавления только одной строки кода, если вы ищете дополнительную информацию. В противном случае вы можете сразу перейти к документации djongo и начать ее использовать.

0 голосов
/ 10 марта 2011

mongodb имеет много вариантов поведения, и django-admin предназначен для базы данных отношений, такой как postgresql

, вы можете создать администратора django с помощью django-nonrel, но это не очень хорошо и не оптимизирует.Я думаю, что лучше создать пользовательское приложение для вашего приложения.

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