问题标签 [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 投票
1 回答
659 浏览

web-services - 通过 Rails 应用程序使用 Rails Web 服务

Rails Web 服务似乎有一些替代方案。即ActiveResourceHTTPartyNokogiri

这三个(或其他)之间是否有明确的赢家来完成工作?这些要求是基本的,即无需任何身份验证即可进行 POST。

我应该提一下,我指的是 Rails 3 应用程序,包括消费者端和服务器端。我知道这是一个相当普遍的问题,那里有很多帖子,但似乎没有一个明确的趋势,即哪个帖子最能满足简单的需求(直觉说选择 ActiveResource,因为它是框架的一部分) .

0 投票
1 回答
334 浏览

ruby-on-rails - 有没有一种将 url_for 与 ActiveResource 一起使用的好方法?

我在我的 rails 应用程序中使用 ActiveResource 与另一个 rails 应用程序(都是 2.3.5 版)对话。我想链接到特定资源对象的页面,但似乎没有任何好的方法可以做到这一点。我想出的丑陋方法是在我的 routes.rb 文件中添加一行来模仿我的资源,如下所示:

但这很丑陋。现在,我的应用程序中出现了一条实际上并不存在的额外路线。一定有更好的方法。模型本身是否有任何线索可以为自己获取 url?有人有任何提示吗?谢谢。

0 投票
2 回答
939 浏览

ruby-on-rails - 在 Ruby on Rails 中使用 ActiveResource 的条件“attr_accessible”

我有两个 RoR3 应用程序:

  • http://users.domain.local
  • http://profiles.domain.local

我创建了“用户/模型/profile.rb”:

在 'profiles/models/profile.rb' 我有:

我的个人资料的 SQL 表包含以下列:

  • ID
  • 姓名
  • 用户身份

因此,如果我运行一个名为“test_name”Profile.create(:name => "test_name")的新配置文件。http://profiles.domain.local

出于明显的安全原因,我不想让 'user_id' 属性可访问,但我需要在从 'users' 应用程序创建配置文件时设置它。

我尝试了很多方法来做到这一点,但我找不到一个简单的解决方案。也许,有可能if在“profile”应用程序的“attr_accessible”附近有一条语句来填充来自“user”应用程序的请求。

有人可以帮助我吗?

0 投票
1 回答
1171 浏览

ruby-on-rails - 如何使 ActiveResource XML 解析更加一致?

我正在使用 ActiveResource 来使用 Redmine(一个错误跟踪工具)提供的 REST Web 服务。该 Web 服务生成如下 XML:

但是,当 ActiveResource 解析它时,我遍历打印它们的结果,我得到:

没错,它会从任何有值的东西中抛出所有属性信息,但保留来自空元素的属性信息。

不用说,当您试图找到 id 15 (或其他)的值时,这会使事情变得相当困难。现在我可以通过位置来引用事物,但这很脆弱,因为这些元素将来可能会发生变化。我认为必须有某种方法让 ActiveResource 保留属性信息,但因为我没有做任何特别的事情。

(我的 ActiveResource 扩展只有五行:它扩展了 ActiveResource,定义了服务的 url、用户名和密码,仅此而已)。

那么,有谁知道我怎样才能让 ActiveResource 不那么奇怪地解析这个 XML?

0 投票
2 回答
1511 浏览

ruby-on-rails - Rails 3: ActiveResource custom method call - ClientError 414 - Work around?

I'm currently creating both the client and server app using ActiveResource for web servicing. The client has a long string (:history) that needs a conversion process done by the server.

Here, the client calls the post method on my object which extends ActiveResource::Base

This line errors complaining that the URI is too long:

ActiveResource::ClientError Failed. Response code = 414. Response message = Request-URI Too Large.

What other options do I have for sending "large" data ? Probably looking in the neighborhood of 2000 characters of data for the hh string above.

Thanks!

0 投票
1 回答
1130 浏览

ruby-on-rails - Rails - ActiveResource 返回哈希而不是对象

我有以下代码

当返回一个有效用户时,他们似乎作为一个哈希而不是一个我可以调用方法的对象返回

例如,我必须访问像

代替

我怎样才能让它作为一个对象返回?

谢谢

0 投票
1 回答
530 浏览

ruby-on-rails-3 - Rails 3.0 中的活动资源,具有非标准 ID 的嵌套资源

我有一个 rails 应用程序需要引用另一个 rails 应用程序来填充它的一些模型,并且正在使用 Active Resource 来完成它。

当我需要到达如下路线时:

完全没有问题,我可以用自动映射就好了……

但是,我还需要能够处理如下路线:

这就是我卡住的地方。

只看文档,看起来这可能算作一个自定义的宁静路线,在这种情况下,我会被困在做可怕的凌乱外观:

这不仅看起来很糟糕,而且也不起作用(实际拥有数据的 rails 应用程序会看到

里面没有身份证。您知道,这很酷,因为事情变得更加复杂,并且其他 rails 对象中的“通道”模型是从没有考虑到 rails 的遗留数据库构建的(因此没有“id”列)。相反,它使用“station_id”。

所以,如果我必须使用那个凌乱的 Channel.get 方法,我怎样才能确保它正确设置了 id?我可以从 ActiveResource 应用程序中执行此操作,还是我需要在源 Rails 应用程序中进行更改?

编辑:以防万一有人建议,我已经尝试过 Channel.first.get(:programs, :id => 1) 但这只是让我得到了如下路线:

/channels//programs.xml?id=1。

也许我将不得不放弃宁静的路线,然后从那里拉出 id....但我真的不想...

0 投票
2 回答
263 浏览

ruby-on-rails - 在什么情况下最好使用 ActiveResource?在哪种情况下不是?

我正在使用 Ruby on Rails 3,并且正在考虑使用ActiveResource将信息从 RoR 服务应用程序传输到 RoR 客户端应用程序。

一般来说,在什么情况下最好使用 ActiveResource?在哪种情况下不是?


我对 ActiveResources 的使用有很多疑问。以下只是其中之一。

  • 我有包括私人信息和公共信息的资源。我不应该通过HTTP发送私人信息,所以我不能发送那些带有公共信息的信息,除非我不破解 RoR 行为。如果我使用HTTPS,这样我就不必破解 RoR 行为,服务器的工作是不是太繁重了?
0 投票
1 回答
2434 浏览

activeresource - 带有 ActiveResource 的 CarrierWave

是否有人对将 CarrierWave 与 ActiveResource 模型(在 Rails 3 中)一起使用有任何见解?我有一个带有文件名字段的 ActiveResource 模型,我想将文件保存到远程文件系统。

我尝试了一些事情但没有取得多大成功(或者确信我在远程正确地做任何事情),所以我很感激任何成功实施 CarrierWave 而不使用 gem 中已经包含的 ORM 模块的人的建议。

0 投票
1 回答
1064 浏览

ruby-on-rails - 如何让两个不同的 ActiveResource 模型使用两个不同的连接对象?

原来 ActiveResource 模型之间的连接是共享的。因此,如果您在一个模型中设置格式,它确实与其他模型中的格式不同。但是,如果您.connection.format在两个单独的模型上调用该方法,则每次设置新格式时该格式都会更改。因此,如果Profile第二次以格式加载,:json那么.connection.format两个模型都会变成ActiveResource::Formats::JsonFormat

我的原始问题完全不同(我不完全理解发生了什么)-您可以查看编辑历史以查看原始版本。希望我能得到更多的回应...

证明:

然后在一rails console...

到目前为止一切顺利......Location模型及其连接具有正确的格式。

看起来很正常,这Profile就是我想要的格式。

好的... Location.format 在加载 Profile 模型后仍然相同 注意:这些模型是延迟加载的,因此在您尝试调用类名之前不会包含它们的文件和代码。

问题就从这里开始了。在我们调用 Profile 模型之后,它完成了Location.connection.format

格式应该相同。当您调用 Location.find(:all, :from => "/something.xml") 之类的内容时,这会导致解析完全中断 - 它会尝试解析xmlasjson

我想我现在的问题是 - 我如何分离这两个连接?(或以其他方式解决此问题)

编辑以在控制台中添加此测试: