Django App vs Apps?

时间:2016-11-07 19:10:06

标签: python django django-apps

我已经阅读了一些StackOverflow答案,包括Django: "projects" vs "apps"using django apps vs established apps...security?,但我仍然在寻找如何组织我的Django应用程序的建议以及为什么?

我的市场应用程序具有以下功能,如果我应该拆分我的应用程序或只构建一个应用程序以及这个决定有什么含义,我正在尝试数字?

  • 主页 - 搜索结果的首页,搜索和呈现的卡片
  • 详细信息视图 - 单击结果卡时看到的内容
  • 预订流程 - pinax条纹支付和少量预订视图
  • 博客 - 自我解释
  • 消息 - 带有自定义视图的django消息,允许提供者 - 客户沟通
  • static - t& c,about和contact static pages
  • 任务 - 根据需要提供电子邮件和其他背景资料的芹菜工作

这是一个应用程序。用户搜索提供商,查找提供商,联系提供商并预订服务。但是,当我查找示例应用程序时,此类功能通常会拆分为多个应用程序。我的问题为什么?我在设计软件方面经验有限,并担心我在这里犯了大错。

我计划将应用与提供商列表功能分开允许我首先手动预先筛选提供程序并在以后自动执行。

它有>

  • 列表 - 允许添加列表,图片视频等。
  • 消息 - ???这让我觉得如果消息是一个单独的应用程序,两者都需要,或者提供商列表应该在相同的大型应用程序下
  • API - ??再次,我也需要这个
  • 付款 - 主要是不同的功能,但有些代码是共享的

所以最后我只是放弃一个庞大的应用程序或拆分尽可能多的应用程序?

1 个答案:

答案 0 :(得分:1)

这完全取决于你。可以将所有内容都放在1个应用程序中,但可能不太方便,因为项目变得非常大。如果需要,您可以随后将其拆分。

拥有单独的应用程序有两个目标:

  • 可维护性:保持概述
  • 可移植性:能够在另一个项目中重用应用程序

如果函数属于一起,则将其合并到同一个应用程序中。 因此,您的博客显然与电子商务部分分开。但它可能只是几行代码,如果将它放在现有应用程序中的某个位置,那么这并不是什么大问题。

我个人更喜欢在一个单独的应用程序中拥有主页(+ about,contact)+ template + js / css的布局,因为这通常不是我的应用程序的一部分,而只是一个前端。对于可能有所不同的电子商务网站。 (这是我使用的https://github.com/allox/django-base-template