我对Django和Angular都很新.我认识到这是主观的,并且可能有很多方法可以做到,但我想知道人们可以推荐哪些最佳实践来布置这样的应用程序.我特别想到丰富的SPA,后端主要或完全是一个RESTful API服务器,但是我想为任何提供Django重要视图的应用程序提供一个通用的方法. (我还没有做足以决定后者是否使用Angular或者可能比其价值更麻烦).
特别:
将前端代码保存在与后端相对的单独目录/存储库中的优缺点是什么,比如说,在Django应用程序的“静态”子目录中?在我的情况下,我现在是唯一的开发人员,这对这个决定有一些影响,但我仍然可以认为自己是后端,前端,设计师等的独立“团队”,因为我的工作流程将是让我一次成为这些角色之一.
我的设置基本上是一个开发机器,GitHub中的SCM,并在WebFaction(共享Web托管)上公开托管.我将下线想要在不同的开发机器上轻松抓取项目,但主要工作流程只是一个开发,一个prod安装.也就是说,我对实际项目中的最佳实践感兴趣,因为我希望未来的工作可能与Django合作.
补充:我非常不确定的另一点是Angular应用程序是否应该/必须由Django引导.也就是说,首页应该由Django提供并注入任何数据?
优点:
>可以配置URL路径甚至API端点,从开发阶段更改为生产阶段,没有任何备用配置,也不会在前端对其进行硬编码.
>这可能是验证所必需的?我还不清楚还没有这样做……
>允许使用Django调试工具栏应用程序等工具.
缺点:
>将前端与后端耦合.如果我想换掉后者怎么办?如果我希望前端在带有模拟数据的沙箱中工作怎么办?
>似乎非常赞成将所有Angular内容移动到Django应用程序布局中.与此同时,我不喜欢在一个地方混合使用Angular部分,而在另一个地方混合使用Django模板.我已经决定不混合NG和DJ模板,因为我不相信会有太多好处.