1

我正在寻找基于 SQLObject 或 SQLAlchemy 的非 Web 项目的最优雅的方式,并用一个体面的 Web 框架覆盖它。

我看过Turbogears,尽管它看起来像是我可以使用的东西,但模型似乎必须在 Turbogears 框架内定义。我希望将核心功能(模型、代码)和呈现层(turgbogears,?)分开。

我需要一些可以从我现有的代码库中获取模型并帮助呈现数据而没有太多麻烦的东西。

4

3 回答 3

3

对于这种事情,你可以看看Pyramid。它非常灵活,因为它不强制执行任何特定的组件组(模板、数据库引擎等)。您可以将它与 SqlObject 或 SqlAlchemy 一起使用 - 您可以根据需要对其进行配置。幸运的是,它也有很好的记录。

有一些用于设置 SqlAlchemy 的 Pyramid配方以及在 Pyramid 之上构建的几个框架,这些框架添加了包括 SqlAlchemy 的预配置默认值:AkhetKufu

于 2011-09-18T00:08:18.010 回答
1

大多数 Web 框架都试图成为满足您所有 Web 应用程序需求的一站式商店,以不同程度的紧耦合或松耦合。也就是说,python 就是 python,Web 框架无法阻止您以自己的方式使用它。只需选择适合您需求的框架并在需要的地方使用现有库即可。

更具体的答案将需要更具体的形式问题:

“我如何在 Z 框架中使用现有的 Y 执行 X?这就是我尝试时发生的情况:[此处的错误消息]

于 2011-09-17T22:34:55.690 回答
0

实际上,在涡轮齿轮箱中有一种简单的方法可以做到这一点。使用 autoload:true 将表重新绑定到现有的 sqlalchemy 模式没有问题 - 如此处所示。并且将您的方法和代码移动到控制器/模型中并不是一件麻烦事,并为您提供所有涡轮齿轮的功能,实际上您还可以在 config/app_cfg.py 中包含类似以下代码的内容:

from mycode import mymethod
base_config.call_on_startup = [mymethod]
于 2011-11-06T17:31:46.087 回答