2008-09-24 30 views
3

做CRUD有什么好看的包或在TurboGears的框架做广泛的CRUD(创建,检索,更新,删除)接口的方法。 FastDataGrid小部件太过于黑匣子而非常有用,CRUDTemplate看起来比滚动我自己更麻烦。想法?建议?在TurboGears中

回答

0

虽然CRUDTemplate看起来温和的复杂,我会说,你可以使用只是您选择的任何ORM实现CRUD/ABCD。它只取决于你自动化的多少(通常意味着提前定义模型/模式)。如果您使用SQLAlchemy或SQLObject组合自己的应用程序,那么您可以学习更多,并且可以更好地进行控制,这些工作对于TurboGears非常有用。

+0

我真的很讨厌代码生成器,如果你需要调整某些东西,然后需要重新生成,因为你的模型改变了,该怎么办? – 2009-10-02 06:48:56

0

做一些更多的挖掘和黑​​客攻击后,它原来不是太难的步态接口拖放到应用程序中。没有很多工作,这不是很好,但它马上就可以工作。

+1

Cakewalk?你可能是指Catwalk。在TG1中它有点坏了。在TG2中它很棒,因为它基于Sprox。尽管您应该直接使用tgext.admin。 – 2009-10-02 06:35:18

3

你真的应该看看sprox(http://sprox.org/)。

它建立在RESTController,是非常简单的,有据可查(IMO),从数据库生成表单和验证的“神奇”,并让你用最少的代码来写。我非常喜欢与它合作。

希望能帮到你:)

+0

sprox擅长创建CRUD。 – 2009-10-02 06:37:18

2

所以你需要CRUD。实现这一目标的最好方法是使用一种可以将所有蹩脚代码带走的工具。这个工具叫做tgext.admin。但是,您可以在多个级别使用它。

  • Catwalk2,tgext.admin的一个默认配置,它知道你的快速启动模型。
  • AdminController,这需要所有的模型(或它们的列表),并为所有的人创造CRUD。
  • CrudRestController,将采取一个对象,并为其创建CRUD。
  • RestController,将采取一个对象,并给你只有REST API,这是没有形式或数据显示。
  • plain Sprox,你会给它一个对象,并且根据你使用的基类,你将得到neww表单或者编辑表或者单个记录视图。