ruby-on-rails – Ruby on Rails分离正面和背面

我一直在使用 Ruby on Rails一年多一点,而且我总是以一种随意的方式来做,我的意思是,所有东西都在一个地方(正面和背面),使用标准的.html.erb文件由关联的控制器方法填充.

否则,今天在我们的项目中,由于多种原因(代码可维护性/清晰度,更好的架构,更多的反应性等等),我需要将前端和后端分开.

我已经做了很多researches,看了一些会议(1,2,3),但还没找到我的解决方案.它看起来像是一个经常出现的问题,但是将Ruby on Rails应用程序的后端和前端分开的最佳实践/工具是什么?

我不觉得我们需要(还)像React / EmberJS / Angular / etc这样庞大的JS框架……

首先,我正在考虑像Middleman/Jekyll这样的东西并通过JSON和API调用进行通信,但似乎它不是动态网站的好解决方案.

那么是否有一个前端框架可以很好地使用Rails API,并且易于维护和升级(像gems一样添加功能/扩展)?

感谢您的见解.

解决方法

我有一个与该问题的评论者类似的设置.

我主要用于项目结构,定义一些页面布局和ActiveRecord.

然后,我使用Grape API框架定义了我的JSON API.

我有一个SPA,写在AngularJS上,它位于公共/文件夹中.它也是我的移动应用程序的两倍,通过phonegap实现.如果我的Angular应用程序没有成为我的移动应用程序的两倍,我可能只是使用资产管道来提供SPA.为了弥补这一点,我在Grunt中编写了一个单独的构建任务,以便在我将其部署到生产环境之前缩小/ uglify我的JS / CSS资产.

我也使用舒适的墨西哥沙发作为我的静态内容页面.

为了把事情弄好,我们花了一些试验和错误,但总的来说,我发现这个设置很适合我.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...