问题标签 [activeresource]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
47998 浏览

ruby-on-rails - 将 Rails 3.1 与多个数据库连接起来

在 ShowNearby,我们一直在进行从 PHP 到 RoR 3.1 的大规模迁移,我们面临的几个问题可能你们中的一些人以前已经解决了。

我们有大量数据,我们决定将我们的数据库分成几个我们可以单独处理的数据库。例如,我们的帐户、地点、日志等被拆分到多个数据库中

我们需要迁移、固定装置、模型,才能玩得很好,到目前为止,它一直很混乱。我们对解决方案可接受的一些要求:

  • 一个模型应该与其中一个数据库中的一个表相关。
  • rake db:drop - 应该删除我们在 database.yml 中指定的所有数据库环境
  • rake db:create - 应该创建我们在 database.yml 中指定的所有数据库环境
  • rake db:migrate - 应该运行迁移到各种数据库
  • rake db:test - 应该抓取固定装置并将它们放入各种数据库和测试单元/功能/等

我们正在考虑为每个数据库设置单独的 Rails 项目并将它们与 ActiveResource 连接,但我们认为这不是很有效。你们中有人处理过类似的问题吗?

0 投票
1 回答
1155 浏览

ruby-on-rails - Rails 中的批量 API 调用

我有两个不同的 Rails 应用程序通过 API 调用相互通信。通话轻松的日子已经一去不复返了,这意味着数据传输要少得多。我们从不关心 HTTP 请求/响应超时问题。但是一旦数据增长,就会出现超时,我们不得不拆分数据并分批发送,而不是直接调用 API。

目前,我们正在使用线程和后台工作做需要做的事情,我觉得这不是更干净的方式,我不得不说性能受到了巨大的打击。我觉得我没有太多选择。有什么建议么?

0 投票
1 回答
741 浏览

ruby-on-rails - 活动资​​源后缀

使用 ActiveResource,对 MyObject.find(id) 的调用将获得“[self.site]/[self.prefix]/:id.[self.format]”。但是,我们访问的 API 的配置略有不同。我们需要访问“[self.site]/:id/[self.suffix].[self.format]”,而不是 id.file_type。

即:获取http://api_path/:id/tool.json

有没有办法为这种情况配置活动资源?我在文档中找不到太多内容。

0 投票
1 回答
824 浏览

ruby-on-rails-3 - 使用 rails ActiveResource 使用现有 Java REST API 时 URL 错误

我是 ruby​​ on rails 的新手。我正在尝试使用 Rails、ActiveResource 类来使用我现有的 Java REST api,但每次资源 URL 命中时都是错误的(https://myapp/resource/**apis**/responce.json),正确的 url 是(https://myapp/resource/**api**/responce.json

问题是活动资源映射 apis/ 而不是 api/

下面是我的模型代码 => app/model/api.rb

app/controllers/api_controller.rb 中的代码

上面的代码总是给出 404 错误,当我检查日志时,资源正在命中https://myapp/resource/**apis**/responce.json?key=key&userId=1 必须命中资源 URL 的位置https://myapp/resource/**api**/responce.json

0 投票
1 回答
646 浏览

ruby-on-rails - 如何将当前的 Basecamp API 与 ActiveResource 一起使用?

我正在尝试使用 Basecamp Classic API ( http://developer.37signals.com/basecamp/comments.shtml )。当前的 basecamp-wrapper 版本很适合我,其中一件事是因为 json 响应包含分页输出,而 xml 响应不包含。这是一个简单的解决方法,但问题是 url 结构没有标准化。

API 指定了一些类似的东西,这让我相信它只是将元素路径和集合路径分开。

我在这方面做了几次尝试,但都没有真正成功。尝试处理这样的评论充其量是 hacky,并且实际上不起作用,因为 element_path 与 collection_path 不同。

这一直有效,直到 update_attribute,它实际上正在获取正确的非嵌套 url,并且它正在发出一个失败的 PUT 请求。

为什么这不适用于更新?如何更好地处理不同的父资源?

任何提示都会很棒。:)

0 投票
1 回答
903 浏览

ruby-on-rails-3 - 使用 ActiveResource 更改 URL

我正在使用 ActiveResource 来管理访问外部服务。

外部服务的 URL 如下:

这是我的汽车课:

当我设置对象以在 rails 控制台中获取特定汽车时:

我得到一个这样的网址:

如何让 URL 包含 range 和 range_num 元素?

另外,我不希望 URL 末尾的 .json 扩展名。我已经尝试覆盖 element_name 和 collection_name 方法,如下所述:How to remove .xml and .json from url when using active resource但它似乎对我不起作用......

提前感谢您的任何想法!

0 投票
1 回答
698 浏览

ruby - 将activerecord上的访问器方法映射到activeresource上的属性?

ActiveModel 中指定的一些属性是非 db 属性,它们只是定义为 getter setter。问题是这些属性值没有反映在客户端的活动资源记录上。

我在客户端上的 SepcialItem 记录的属性名称的值为零。基本上我正在尝试将访问器方法名称映射到客户端的名称属性。

什么是可能的解决方案?

0 投票
1 回答
558 浏览

ruby-on-rails-3 - Rails3 ActiveResource Post Call 传递一个空的参数散列

我正在尝试使用 ActiveResource 和 Json 从 Rails3 应用程序在 Sinatra API 应用程序中创建一个新的“人”。在 Rails3 中,我创建了一个“Person”模型并使用 ActiveResource 我正确调用了 API,该 API 正确读取了 URL,但似乎没有参数与对象一起传递。

从 Rails3 人模型:

从 Rails3 控制台:

从 Sinatra 应用程序:

使用 IRB 控制台可以:

有人可以就我错过的或做错的事情给出一些指导,谢谢。

0 投票
1 回答
1540 浏览

ruby-on-rails - :has_many, :through 与 ActiveResource 模型

UserService 后端 Rails 应用程序上的三个模型:

单独的 Rails 前端中的三个 ActiveResource 模型

从前端,它可以做

因为Service.user_id 是一个belongs_to……它是一个单一的属性。

但是我也做不到

或者

什么都没有发生,因为 ActiveResource 只是产生 GET 请求。

为了完整起见,(在前端)执行以下操作也会失败。

等等。我假设通过 users_controller::update 方法会起作用,但现在我质疑这是否可能。

有人用两个 ActiveResource 模型做过 :has_many, :through 吗?有什么方法可以影响 AR 模型的收集吗?我需要手动操作连接表吗?(从而创建一个members_controller?)

0 投票
1 回答
1765 浏览

ruby-on-rails - 为什么 ActiveResource Post 不发送任何参数?

我正在尝试使用 ActiveResource 和 Json 从 Rails3 客户端在 MongoDB/Sinatra 服务器中创建一个新的“用户”,并且发送的对象正文或哈希为空。在 Rails3 中,我创建了一个“用户”模型,并使用 Rails 控制台对 Sinatra 服务器进行了 ActiveResource 调用。服务器正确读取 URL,但似乎没有参数与对象一起传递。有人可以告诉我他们对我错过了什么或为什么我没有得到正确输出的想法吗?

Sinatra 服务器使用 Ruby 1.8.7。
Rails3 客户端使用 Ruby 1.9.2。

从 Rails3 客户端用户模型:

从 Rails3 控制台:

Sinatra 应用服务器接收以下对象(我使用“puts @app.inspect”从 Sinatra 服务器检索):

如您所见,@params={} 为空。

使用 HTTP 请求有效:

并产生这个:

@params={"last_name"=>"Bill", "first_name"=>"Smith"} 不再为空。

在 active_resource/connection.rb 文件中,第 94 行

我确定我错过了一些东西,但这似乎创造了一个空的身体。

提前感谢您的建议。