我正在将MetaWeblog API支持添加到Django CMS,并且我不太确定如何对应用程序进行分层。将API添加到Django应用程序的最佳方式是什么?
我正在使用django_xmlrpc,它允许我映射到每个请求的参数化函数。这只是我从服务函数(AddPage,EditPage等)调用django应用程序的级别的一种情况。
对于django-page-cms,我假设有很多django应用程序,业务逻辑和验证包含在表单中。在这种情况下,有PageForm(forms.ModelForm)和PageAdmin(ModelAdmin),它们都包含很多逻辑和验证。
如果我要构建一个允许维护页面和内容的API,这是否意味着我应该以编程方式创建并填充PageAdmin实例?然后捕捉任何异常,并转换到他们的API等价?或者这是一个坏主意 - 滥用什么形式的目的?
另一种选择是重构代码,以便业务和逻辑不在表单类之外。然后我会有形式和api,都要通过单独的业务逻辑。
其他选择?
什么是最好的解决方案?
我已经启动并运行了Web服务。它是我应用程序中的哪个级别的案例。 因此,对于我的服务函数AddPage(),例如,您将生成管理窗体编程方式填充它并保存? – 2009-06-30 16:12:48