使用类似RPC的协议缓冲区作为Django的后端,而不是MySQL或SQLite

时间:2009-12-01 20:29:23

标签: django django-admin rpc protocol-buffers

app-engine-patch项目背后的聪明人基本上已经启用了Django的所有有趣的东西,包括管理员,但没有使用Django的ORM。

从他们的网站:

  

最重要的变化是您必须使用Google的 Model 类,因为开发模型与Django差异很大(至少使用Django的当前API)。

这基本上就是我想做的,但是通过RPC使用Google's Protocol buffers作为数据传输层。

在他的addressbook.proto示例中使用Person消息,我基本上想要这样做:

from django.contrib import admin
from myrpc.models import Person

class PersonAdmin(admin.ModelAdmin):
  list_display = ['id', 'name', 'email']

admin.site.register(Person, PersonAdmin)

1 个答案:

答案 0 :(得分:0)

app-engine-patch不再维护,上次我尝试了它是如此的错误,以至于我最好重新实现我想要的中间件。我也不记得他们曾经支持Django的管理员。

Django的Admin与Google App Engine的数据库访问API不兼容。它实际上是完全不同的。

然后有Django-norel试图让Django的ORM与GAE兼容,你可能会有运气,但它又一次没有维护。

所以在GAE上,不要使用补丁,因为Django 1.2已经包含在可用API列表中。请参阅其文档中的此部分:Third Party Libraries, Django

你将无法使用Django的管理员。请放下心来。