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

ruby-on-rails - 访问 RABL 模板中的子实例

我有一个如下所示的 RABL 模板

如何访问模Contact板块中的对象child?我需要对子实例执行一些条件逻辑。

0 投票
1 回答
752 浏览

ruby-on-rails - 在 RABL 模板中渲染 ERB 模板

我有一个场景,我想用我的 JSON 传回一条长消息。与其用字符串连接写出来,我宁愿把一个 erb 模板放在一起,我可以将它渲染到我的 JSON 中。以下是我目前正在尝试的代码:

第一次运行此代码时,一切都按预期工作,但是,我第二次运行它时遇到问题,因为它说缺少实例变量(我假设它是在第一次运行期间生成并缓存的)。

未定义的方法 _app_views_invitation_mailer_rsvp_sms_text_erb___2510743827238765954_2192068340 for # (ActionView::Template::Error)

有没有更好的方法将 erb 模板渲染成 rabl?

0 投票
1 回答
589 浏览

ruby-on-rails-3 - 限制 Rabl 中的孩子数量

我想限制用 rabl 呈现的 JSON 响应的子节点数

一个 Vehicle 有多个位置,一个位置属于一个车辆。现在我只想输出 JSON 中的最后一个位置。

我会很感激任何想法。

0 投票
1 回答
1701 浏览

ruby-on-rails - 仅当对象中存在属性时,如何才能使 RABL 呈现属性?

我有一个 RESTful 用户模型,并且当正在寻找的用户对象不是当前用户时,我试图过滤要包含在显示 JSON 响应中的属性。

逻辑:

当我在控制器中过滤属性时,我得到一个 MissingAttribuiteError 并带有以下代码:

用户控制器

用户/show.json.rabl

仅当对象中存在属性时,如何才能使 RABL 呈现属性?

0 投票
1 回答
365 浏览

ruby-on-rails - How can I consume a RABL API from within the application?

I'm working on exposing an API using RABL. Exposing the views is easy enough, but I've run into trouble having my own application consume those views.

For example, assume I have an endpoint at http://example.com/api/articles, which produces a JSON representation of the articles.

In my ArticlesController#index action, I wish to render a (HAML) view that shows a list of the articles. Rather than duplicate the logic from ArticlesApiController#index, I want to simply use that data—i.e., I want to say "go get this data from the /articles API endpoint," and then pass that data to the HAML view.

How can I do that? Or, is this the wrong way to go about doing this?

0 投票
1 回答
687 浏览

ruby-on-rails - rspec-rails + rabl 渲染视图,即使我不希望它们被渲染?

我正在使用 rabl 0.6.13、rspec-rails 2.10.1 和 rails 3.2.6。

我正在尝试单独指定我的控制器,但由于某种原因,我的 rabl 模板在我在控制器规范中使用的模拟中向我抛出了各种未定义的方法异常。我没有使用render_views. render_views我认为除非您在控制器规范中指定,否则 rspec 不会处理视图。我已经运行调试器以确保在块 rspec-rails 插入之前render_views?评估为false。有没有其他人遇到过这个问题?

0 投票
1 回答
2627 浏览

ruby-on-rails - Rabl json 集合动态键

我有一个有很多帖子的用户模型。我试图在 rabl 集合中呈现帖子。

渲染 json 集合的默认 rabl 格式是 {'posts': ['post':{}, 'post':{}]}. 例如,我想要完成的是将“post”键更改为动态值 post id,以便我的格式看起来像这样{'posts':[1:{}, 2:{} ]}。正在尝试使用 Rabl 的配置,但我发现的唯一一件事是如何使用

0 投票
3 回答
1330 浏览

ruby-on-rails-3 - 使用多态模型渲染 RABL 部分

我有一个数据模型,其中 aUser可以喜欢 aProject, Suggestion, Comment或其他对象。模型设置正确,likes/show.rabl如果我们只是为了支持Project孩子,它就可以工作

但是,我希望能够suggestions/show, comments/show根据target_type.

我试过这个,但它不工作:

我明白了undefined method target for <Rabl::Engine:0x69fb988>。但是,在第一种情况下我没有收到此错误。有任何想法吗?

0 投票
1 回答
101 浏览

ruby-on-rails - How to have two pieces of data output as json in rabl

New to rabl and not sure how to do this with two different arrays returned in a single hash like this:

In my rabl file, I'd like to do something like the following:

to output this:

but it just doesn't seem to be working. Is there a way to get this to work?

thx

0 投票
1 回答
381 浏览

ruby-on-rails - 如何在 RABL 生成的视图中过滤结果

我正在使用 RABL 来呈现 JSON。我有这些模型:

  1. Project
  2. Task
  3. User

“显示项目”操作应导致项目详细信息的呈现,包括项目中的任务列表,但仅允许用户查看

到目前为止,我已将所有 Tasks 添加到 Projectshow.rabl中,并且运行良好:

有没有办法告诉 RABL 只渲染满足给定条件的任务?- 我已经在控制器中有逻辑,但我不知道如何告诉 RABL...

- 更新 -

我想出了一种方法,方法是添加一个“代码”部分,传入项目对象,然后从可见任务构建散列并渲染它。这可行,但它非常难看,并且首先破坏了使用 RABL 的目的。它看起来大致是这样的:

我确信我的用例不是那么独特。有没有更直接的方法来做到这一点?