Django管理员和MongoDB,可能吗?

ada*_*Lev 19 python django django-admin mongodb

我正在为我们公司的使用建立一个简单的短URL服务.我想使用mongodb存储数据,但我需要一些简单的界面来添加/编辑短网址到长网址映射.

mongo文档将非常简单,如下所示:

{
  shortUrlSlug: 'pbbs',
  fullUrl: 'http://example.com/peanut/butter/and/bacon/sandwiches/'
}
Run Code Online (Sandbox Code Playgroud)

有什么东西可以向mongodb公开一个简单的"CRUD"管理界面,可以与django集成,你可以在那里指定模型吗?
基本上像django admin,但不需要SQL数据库.

谢谢!

小智 11

我已经确认django-nonrel项目确实支持管理界面.我确实遇到了一个问题,即默认的SITE_ID被选为一个数字,不允许作为MongoDB中的主键.我通过设置解决了这个问题

SITE_ID ='4d421623b0207acdc500001d'

在我的settings.py中

我通过shell打印集合中第一个站点值的id得到了数字.

我没有对此进行过广泛的测试,但确实为一个Poll对象注册了一个管理员并且看到它有效.

  • 这完全有效.只需启动mongo shell,执行"db.django_site.find()"并使用结果中的ObjectId值作为settings.py中SITE_ID的值. (2认同)

小智 9

我使用django-nonrel和mongodb-engine,效果很好.Django管理员也可以使用标准模型字段.但是如果你使用listfield和dictfield,你需要做一些黑客攻击.