Django + GWT或Jquery

我在django中制作了一个复杂的模型结构。 我曾计划使用GWT渲染这个结构,但是使用python进行通信的选项是: – 使用JSON,在这种情况下,我必须在javascript对象中复制模型结构(参见gwt教程)。 – python-gwt-rpc是一个与gwt兼容的远程过程调用库,但在我看来,与django模型集成并不容易,而过时的文档对我没有帮助。

我考虑的另一种方法是使用Django模板系统来渲染我的页面,其中包含一些Jquery UI插件和本文中建议的方法,用于在不处理JSON对象的情况下检索html数据,因为我认为处理它是一场噩梦,因为在我的结构中数据变化也会使界面剧烈变化。

所以我认为使用GWT我必须在javascript对象中复制django模型,但我已经得到java子类系统的支持。 在第二个解决方案中,我重用django模型并使用django模板系统然后我能够进行服务器端检查,但是既不是一个很酷的GWT接口,也不是轻量级Json调用更新页面。

你对这个问题的看法是什么?

你考虑过睡衣吗?

对我来说,这是两全其美的。 像往常一样,您使用Django后端,但可以轻松地使用您的睡衣代码中的JSON RPC服务。

你编写的前端非常类似于GWT,但是用Python代替Java。

这是一个简短的教程: http : //gdwarner.blogspot.com/2008/10/brief-pyjamas-django-tutorial.html

我认为您需要根据常规因素做出决定:您需要多长时间来开发应用程序,以及在此期间完成开发的最佳工具集是什么。

如果你已经决定Django是你的服务器端框架(这是我最喜欢的选择),那么很明显jQuery,Dojo等可能会更容易与你的Django集成。

另一方面,如果你有更多的时间,特别是如果你可以开源Django接口部分,那么编写一些可以挂钩到Django内部并生成必要的Javascript以与GWT无缝连接的代码将会非常酷。不违反DRY。

简而言之,如果你必须完成应用程序,请使用jQuery。 如果你有更多的时间并想要一些荣誉,那么为Django开发一个漂亮的无缝库,它将从Django模型和将与GWT集成的表单中呈现正确的HTML + Javascript。

只是我的观点 :)

我实际上已经越过了这个桥梁,不幸的是我发现最好在GWT中创建客户端对象。 幸运的是,使用JavaScript Overlays和一些代码生成器很容易实现。

我的代码生成器查看models.py文件并删除所有相关字段,然后将它们放入GWT的.java文件中。 一旦你有了这个,实现你的新对象非常容易。