mongodb的django admin替代品。
项目描述
这是一个mongodb的django admin替代品。尽可能使用django admin的功能,并可以与正常的django模型和SQL数据库一起使用。
要求
Django >= 1.3
mongoengine >= 0.6
使用
将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的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | a4c8149b441eb55607e6359b9bd9185cb558db379b74f87ca022d741e4da9c90 |
|
MD5 | ebf2bceb81ad1cdccec56f32e7e2877b |
|
BLAKE2b-256 | d983b0ae472244b9300ab0d9ba4f90848d7843f52efeeafff9bd6e4d2e69be26 |