我正试图绕过卡布奇诺。我希望我的 StackOverview 同行审查下面的架构,看看它是否有意义 - 目的是利用 Django 和 Cappuccino 的独特优势,而不会使技术重叠的地方加倍......
当网络浏览器请求一个“友好”的 URL(例如 /、/articles 等)时:
- DJango 的 urls.py 将其与视图相匹配。
- 该视图没有执行 DJangos 使用 locals dict 填充模板的典型工作,而是
直接返回 Cappuccino 应用程序中使用的小型“存根”HTML。 - 客户端收到卡布奇诺 HTML
- 客户端请求存根 HTML 中提到的 Objective J JS URL
- 最终用户应用程序在浏览器中执行并显示
浏览器现在有一个工作应用程序。当用户做某事向服务器请求某事时:
- 浏览器将 XMLHTTPRequest 发送到 URL。
- Django 的 URLs.py 将其与视图相匹配。
- 视图是否有效,可能与数据库模型交互。但是 Django 没有返回模板,而是返回了一些 JSON。
- 客户端收到 JSON,然后做它需要做的任何事情。
这有意义吗?我们仍然受益于友好的 URL,以及为我们创建的数据库来建模我们的代码。然而,我们没有使用模板,而是提供了 Cappuccino 存根页面和 JSON 响应,以便为用户提供更像真正的应用程序而不是 HTML 模板引擎的东西。
有没有更好的做事方式?其他 Pythonistas 使用什么?感谢您的反馈意见。