我有一个带有SQL数据库模型的Python CLI程序,并希望添加带有MVC框架(例如Django)的前端。如果已经定义了模型,将程序与框架连接的最佳方法是什么?
我是否:
重写模型,以便Django和我的程序共享 编写一个在Django和我的程序之间进行交互的层 从“我的程序”中删除模型,让Django处理 选择1:共享模型
My Program
/ | \
Binaries Model Classes
|
Django
/ \
View Controller
选择2:创建桥接库
```js
My Program / |
Binaries Model Classes | My-Bridge | Django / |
View Model Controller
选择3:使用Django进行大多数工作,并从我的程序中删除模型
```js
Classes
\
My Program
/ |
Binaries |
|
My-Bridge
|
Django
/ | \
View Model Controller
我避免选择#1(创建共享模型),因为我不知道如何使用Django的ORM和SQLAlchemy创建共享模型。
我不确定选择2(创建网桥),因为我不知道这是否完全使用了Django。从文档来看,考虑到Django应该使用MVC框架,因此似乎应该处理该模型。
我还避免选择3(从程序中删除模型),因为我将不得不重写所有在My-Program中使用SQLAlchemy模型的SQLAlchemy ORM逻辑。
你们有什么感想?考虑到我已经编写了程序的CLI版本,哪种选择最好?
我喜欢Django,但在这种情况下,您也可以看看Pylons,因为它们支持SQLAlchemy。或者,您仍然可以通过将SQLAlchemy导入视图来使用它。请参阅此示例的示例。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。