跳转到主要内容

mongodb的django admin替代品。

项目描述

这是一个mongodb的django admin替代品。尽可能使用django admin的功能,并可以与正常的django模型和SQL数据库一起使用。

要求

使用

将mongoadmin添加到INSTALLED_APPS设置

INSTALLED_APPS = (
    ...
    'mongoadmin',
    'django.contrib.admin',
    ...
)

将mongoadmin添加到urls.py

from django.contrib import admin
admin.autodiscover()

from mongoadmin import site

urlpatterns = patterns('',
    # Uncomment the next line to enable the admin:
    url(r'^admin/', include(site.urls)),
)

您的应用中的admin.py需要使用mongoadmin而不是django的admin

from mongoadmin import site, DocumentAdmin

from app.models import AppDocument

class AppDocumentAdmin(DocumentAdmin):
    pass
site.register(AppDocument, AppDocumentAdmin)

现在文档应正常出现在django的admin中。

使用第三方应用程序与mongoadmin

要使用第三方应用程序(即在其admin类注册在django.contrib.admin.site中的应用程序)与mongoadmin一起使用,您必须将MONGOADMIN_OVERRIDE_ADMIN = True添加到您的设置文件中。这将用mongoadmin的admin站点覆盖django的admin站点。

什么工作,什么不工作

django-mongoadmin目前仅支持最基本的功能,并且甚至这些功能也没有经过真正的测试。

你可能无法使用Django提供的所有关于关系的良好功能。问题在于,Django的双向关系有很多魔法,而MongoEngine有单向的ReferenceField。因此,为了使关系真正起作用,可能需要在文档和查询集中注入大量代码,使它们成为Django内容的克隆,或者重写管理器的大部分内容。如果你认为任何一种方法都值得尝试,请提交一个pull请求。否则,请随意提交问题,但不要对修复抱有太大期望。

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

mongoadmin-0.2.tar.gz (35.7 kB 查看散列值)

上传时间

由以下支持