问题标签 [rabl]

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 回答
808 浏览

ruby-on-rails - 带有 rails 3.2 和 rabl 的 API

我正在使用 rails 3.2 和 rabl 开发一个 API。

基本上我有一个模型“资产”和一个非常简单的关联控制器:

对于每个动作,我都有一个关联的 ACTION.json.rabl 视图。

例如,我的 index.json.rabl 是:

当我发出以下命令时,将创建 Asset 对象但具有空值:

另外,POST/assets.json 和“create”函数之间的映射在哪里指定?

0 投票
4 回答
7842 浏览

ruby-on-rails - 删除 RABL 中的子根节点

我正在尝试使用 RABL 呈现一个非常简单的数据结构,但我无法弄清楚如何正确删除子根节点。这是我的两个模板。

一是集合索引模板。

接下来是文件部分模板。

这两个模板最终生成以下 JSON:

我想找到一种方法来删除文件集合中的根“文件”键。就像是:

0 投票
1 回答
96 浏览

ruby - 当 to_json *几乎*足够好时

我正在为具有多个嵌套子对象级别的模型对象的 Rails 应用程序中的视图呈现 json。最初, to_json 已经足够好了,因为我不需要从模型对象中添加/修改/重命名任何东西。但是,我现在需要在 json 中插入一些不在模型对象中的 URI(对于一些嵌套的子对象)。我正在考虑使用 RABL,但从我目前看到的情况来看,我需要为我仍然希望默认 to_json 行为的对象指定更多格式,以便能够获得我可以在某些子对象上添加 URI。我的想法我想要的是一种在对象图上使用 to_json 并能够指定只有某种类型的对象需要以不同方式处理的方法。有没有人用 RABL 做过类似的事情或完全知道更好的方法?

0 投票
2 回答
1090 浏览

ruby-on-rails-3 - rabl中任意嵌套一些属性

我正在为我的项目设计一个新的 API,并且我想将具有嵌套子项的对象作为 json 返回。为此,我决定使用 RABL。

我希望客户端能够了解对象是否有效,如果不是,哪些字段丢失以便正确保存。

我想到的设计应该包括一些可选的字段,在可选的哈希下,其余的都是必需的。必填字段应出现在 json 的根目录下。所以我试图描述的输出应该是这样的:

上面的输出示例描述了必填字段 name 和 last name,以及不需要的 address 和电话(与对象的 belongs_to-has_many 关系相关联)。name、last_name 和 address 是用户的数据库字段。

与 RABL 一起玩到目前为止,我还没有设法创建这种结构。

有什么建议么?我正在寻找一种 DRY 方法来为我的所有模型实现这一点。

0 投票
1 回答
1267 浏览

ruby-on-rails - how to render a rabl view in a rake task?

I'm trying to render a rabl view to string in a rails 3.2 rake task. I'm rendering it to string in order to send some JSON through Pusher from a background task. I've looked at various render_to_string from rake task answers but none of them seem to work. Here is what I have thus far:

With this attempt I get a ActionView::Template::Error exception and the error "undefined method `parameters' for nil:NilClass".

0 投票
2 回答
11267 浏览

ruby-on-rails - 如何在设计 authenticate_user 中删除 html 重定向

我使用该设计的 authenticate_user!控制器中的方法。当请求中提供的 auth_token 正确时,这可以正常工作,但如果身份验证失败,我最终会得到:

当我使用 rabl 时,最好的方法是什么

返回而不是 html 重定向?

0 投票
3 回答
1890 浏览

rabl - Rabl,删除子元素的父元素

谁能帮我摆脱“项目”中的“项目”元素

输出应该是:
"list":{ "items":[ { { data1: "test" } , { data2: "test2" } } }

电流输出:
"list":{ "items":[{ "item":{data1: "test"} "item":{ data2: "test2"}}}

0 投票
0 回答
175 浏览

ruby-on-rails - Rails - 在行项目模型中的选项下分组选项值

我有一个LineItem模型,在哪里LineItem habtm option_values

每个Product has_many optionsOption has_many option_values。这个想法是用户可以选择不同的选项(复选框)并将它们添加到购物车,创建一个具有许多 option_values 的 LineItem。通过选项值,我应该知道谁是父母(即选项)

我在这里遇到了障碍。我正在尝试使用 RABL 编写 API。我想将数据表示为 JSON。

有没有一种 Rails 方法可以生成一个方法,将选项值分组到选项下?

IE

我的本能是使用@line_item.group_by(&option).map,但它给了我

没有适当的嵌套。

对不起,糟糕的伪代表,谢谢。

0 投票
2 回答
1483 浏览

ruby-on-rails - 使用 RABL 和 Draper 来渲染 to_json

我的Ticket模型应用程序中有一些相当复杂的 JSON 响应,我希望我TicketDecorator能成为构建这些响应的人。

但是,我已经为我的系统设置了 API,并使用 RABL 来构建这些 JSON 响应,所以我想重用我已经创建的模板。

我想知道是否可以从 inside 的方法中呈现 RABL 模板TicketDecorator,如下所示:

这是我的 RABL 模板tickets/show.json.rabl

这是我的TicketDecorator方法:

但是,这不起作用,因为我无法成功设置@ticket,并且我收到一条错误消息: undefined method `first_attachment_url' for nil:NilClass因为@ticket是 nil。

关于如何使这两者很好地协同工作,有人有什么好的解决方案吗?

我唯一真正的想法是将模板渲染为字符串并手动使用 RABL,但我不确定如何render_to_string在 Draper 内部调用,因为它不是视图助手。

对此有什么想法吗?

0 投票
2 回答
2659 浏览

ruby-on-rails - Rails RABL respond_with 错误模板

在 Rails 3.2.x 中使用 RABL,给定以下控制器操作:

假设验证失败,您如何让 respond_with 使用 RABL 模板而不是标准 JSON 错误散列 - IE。除了与请求一起发回的验证错误消息之外,我还想要其他模型属性。

建议?