ruby-on-rails - 如何在 Rails 4 中使用 api? Rails-api gem 已合并到 Rails 5 中

标签 ruby-on-rails ruby devise rails-api

我已经有一个 Rails 4 网站。 现在我正在构建一个移动应用程序,需要从我的网站正在使用的同一数据库中获取数据。

看起来rails-api gem 已合并到 Rails 5 中。但是 Rails 5 尚未准备好用于生产,并且不受 devise 等 gem 的支持。

文档全部为合并版本: http://edgeguides.rubyonrails.org/api_app.html

那么我现在应该使用哪种 gem 和指南来为我的网站创建 api?

最佳答案

Rails 4 中没有任何内容可以阻止您构建 API。为什么不在现有 Rails 应用程序的命名空间下创建 API?有一些像Grape这样的 gem 这会有所帮助,但不是必需的。有很多关于该主题的教程,包括一些仍然相关的 Rails Cast,因此应该很简单。

Rails API gem 是 Rails 的轻量级版本,仅保留 API 应用程序所需的核心部分。这意味着您没有 ActionView 或服务器生成的模板。它基本上是 Rails 减去 API 不需要的任何内容。

通过合并到 Rails 5,这仅仅意味着 Rails 5 将为您提供创建精简应用程序的选项,该应用程序仅具有 API 应用程序所需的内容(减去 ActionView 和其他垃圾)。

但是 Rails API 内部的所有内容都在 Rails 内部,甚至更多。

但是由于您已经有一个正在运行的 Rails 应用程序,因此只需将 API 构建到其中即可。如果您想创建一个仅限 API 的应用程序,那么请继续使用 Rails API gem、普通的 Rails 应用程序甚至 Sinatra 创建一个应用程序。

关于ruby-on-rails - 如何在 Rails 4 中使用 api? Rails-api gem 已合并到 Rails 5 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33160120/

相关文章:

ruby-on-rails - 去除 在 Rails 中

ruby-on-rails - 为 Heroku 域指定 SSL 端点

ruby-on-rails - Rails 文本_区域大小

mysql - ruby:从字符串中去除反斜杠

ruby-on-rails - 更改设计和 rails 3 以使用 bcrypt 而不是 sha

ruby-on-rails - 设计:我不能只显示当前用户锻炼

ruby-on-rails - Rails 最佳实践 : another model or more model fields?

ruby - 拦截 I18n 翻译/extend Module.new { .... } 做什么?

ruby-on-rails - rails : Cannot use methods defined in application helper within devise email views?

ruby - 一个 YAML 对象可以引用另一个吗?