【问题标题】:Intergrating Angular JS with rails将 Angular JS 与 Rails 集成
【发布时间】:2013-08-09 16:08:58
【问题描述】:

我需要一些指导来弄清楚如何将 Angular 整合到 Rails 中。

选择 Rails 的原因:我喜欢他们自以为是的做事正确的方法。还有迁移,宝石真的很酷。

Angular 的原因:我正在研究和寻找最适合 SPA 的框架。骨干似乎太抽象了。我不得不在 Angular 和 Ember 之间做出选择。我首先开始阅读 Angular,这对我来说很有意义。所以我从来没有读过关于 ember 的文章。

使用 Angular 和 Rails 的原因:我研究并尝试使用小规模框架,如葡萄、苗条(是的,我也使用 php)。但我觉得需要坚持长期的项目范围。而且我个人喜欢用 Rails 的方式做事。

所以这里是我需要帮助的地方,

我在 Rails 4 中有 rails 项目。

登录、注册一切都是按照 Michael Hartl 教程创建的。根据我的要求调整了一些东西。

因此,登录后或注册后步骤会呈现来自用户控制器的显示操作的视图。

我想我需要不同的布局文件,所以我分别为外页和内页创建了相同的布局文件。

我不知道如何继续我想为我的单页应用程序(驻留在登录后)使用角度模板和路由。如果有其他方法,我很灵活。我只需要一个指南,如何在 Rails 中无缝使用 Angular,利用 Rails 控制器处理我的休息请求,并使用 Angular 提供的路由在 SPA 中导航。

希望我很清楚。随意编辑这个。

【问题讨论】:

标签: ruby-on-rails ruby angularjs single-page-application


【解决方案1】:

这是来自 ryan bates 的精彩 Railscast:http://railscasts.com/episodes/405-angularjs

这里也是 Railscast 的来源,您可以从那里获得想法:

https://github.com/railscasts/405-angularjs

【讨论】:

  • 这个是基础集成。我成功地做到了这一点。如果我想使用角度模板+导轨怎么办?所以在某种程度上元模板。除此之外,我如何使用 Rails 提供的路线?喜欢退出链接?
【解决方案2】:

我对 SPA 不熟悉,但我一直在编写一个集成 rails 和 angularjs 的教程,我会随着时间的推移对其进行改进。它可能会在这里提供一些答案 - 特别是我正在使用角度路由来提供您所描述的单页应用程序:http://technpol.wordpress.com/2013/09/03/angularjs-and-rails-tutorial-index/

【讨论】:

    【解决方案3】:

    我建议您不要将 Angular 混入您的 Rails 应用程序中。将两者分开。

    因此,您可以将整个 Angular 应用程序放在 Rails 应用程序的公共文件夹中,也可以将其完全远离 Rails 应用程序。这更像是一个面向服务的架构,您的 Rails 应用程序作为后端作为 API,而前端(Angular 应用程序)使用该 API。

    有很多不错的文章涵盖了如何处理身份验证/授权 在带有 REST API 的 angularjs 中。Authentication with AngularJS and a Node.js REST api

    对于构建 REST API 而言,Grape 是一个不错的选择。 Here 是一个很好的系列,解释了有关葡萄的一些最佳实践。

    HTH!

    【讨论】:

      【解决方案4】:

      我建议看看这个tutorial: How to Wire Up Ruby on Rails and AngularJS as a Single-Page Application。我已经将它用于一些个人项目,所以我确信它在 2014 年底是最新的。如果你想查看它的实际效果,你可以前往http://goodmatches.herokuapp.com,你可以查看repo

      【讨论】:

        【解决方案5】:

        试试half-pipe gem,它可以更轻松地使用 bower 管理 javascripts 资产。

        【讨论】:

          猜你喜欢
          • 2016-05-09
          • 2015-12-29
          • 2019-01-04
          • 2021-04-05
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-04-14
          • 1970-01-01
          相关资源
          最近更新 更多