问题标签 [fastjsonapi]

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 投票
2 回答
1294 浏览

ruby-on-rails - Ruby FastJsonAPI 动态 set_type?

我一直在挖掘FastJsonAPI。效果很好。

是否可以基于每个对象设置set_type 序列化程序定义?

即我正在使用Rails STI(单表继承)。我有一组混合的基础对象和派生对象,我希望每个对象都有不同的类型。

这是我想要的 JSON 输出的假示例:

当然,我确实有一个type可以使用的对象属性,因为我使用的是 STI。但我不想将其用作属性:我想将其用作 outside type,如上面的 JSON 所示。

序列化器:

你看,我有一些控制器只能从单个对象type中提取,对于他们来说,单个对象CarSerializer或其他对象都很好用。问题是当我使用这样的控制器时,它在 index 方法中聚合了多种车辆类型:

0 投票
1 回答
2321 浏览

ruby-on-rails - 如何包含与 ActiveRecordSerializer 具有多态关联的嵌套资源?

我正在使用 Netflix 的jsonapi-rails gem 来序列化我的 API。我需要构建一个response.json包含帖子相关评论的对象。

Post模型:

多态Comment模型

PostSerializer

注释序列化器

帖子#index

到目前为止,我只给了我评论类型和 ID,但我也需要评论body

在此处输入图像描述

请帮忙!

先谢谢了~!

0 投票
1 回答
1599 浏览

ruby-on-rails - Ruby On Rails:Netflix fast_jsonapi 不渲染它定义的属性

目前我正在使用fast_jsonapi gem来处理 API 请求而不是 AMS。

但是当我想从中删除某些字段attributes或添加自定义字段时。

它不会出现,并且输出将返回与模型相关的所有字段。

licenses_controller.rb

license_serializer.rb

返回的输出

预期输出:

我错过了一些配置吗?我想,我已经根据 gem 文档遵循了正确的指令。

有什么建议吗?我真的很感激任何帮助:)

0 投票
2 回答
1846 浏览

ruby-on-rails - 序列化为 json 时如何包含子关联?

在使用 fast_jsonapi gem 之前,我正在这样做:

我的 SchoolSerializer 看起来像:

如何让学生包含在 JSON 结果中?

此外,教室关联包括但它显示所有属性,有没有办法将教室属性映射到 ClassroomSerializer ?

0 投票
1 回答
453 浏览

rails-api - 包含符合 JSON API 规范的非关联对象响应

我正在尝试使用JSON API 规范在 Rails 中构建 API

我的用户模型具有与之关联的更改对象。例如,用户可以进行以下更改:

如您所见,该diffs属性包含一组更改差异,第二个差异是一组对象差异。我想修改这种格式(如果可能的话),使其符合 JSON API 规范。像这样:

并将标签的属性放入包含的部分:

问题:差异是一个对象数组(不是记录,它们没有 ID),其中包含带有记录的字段。是否可以将响应格式化为如此深嵌套的记录(如我的情况下的标签)将引用包含部分中的记录?

我想使用fast_jsonapi gem

0 投票
2 回答
229 浏览

ember.js - 在 Ember 中创建新记录时出现 Rails ActionController::ParameterMissing 错误

Rails 5.2 与 fast_jsonapi 1.5、Ember 3.4

我在 Ember 中创建了一个这样的新标签记录:

这会发送以下 json(如 Chrome 的 Network 选项卡中的 Request Payload 所示):

但是 Rails 只得到(通过在 TagsController 的 create 方法中打印出参数来验证):

它会引发以下错误:

这是我的控制器代码:

让 ember 和 rails 相互理解的诀窍是什么?由于 ember 在有效负载中发送“类型”,我可以让 Rails 了解这是模型,从而满足我设置的“标签”出现在参数中的要求吗?

0 投票
2 回答
342 浏览

ruby-on-rails - 如何使用 fast_jsonapi 在 Ruby on Rails 中序列化 habtm 关系

我创建了一个 Ruby on Rails API 应用程序,我想在其中使用fast_jsonapi实现一个 JSON api 。现在我正在与未显示的关系作斗争。我必须改变什么?

这是我的 schema.db:

这些是我的模型:

这些是我的序列化程序:

0 投票
2 回答
312 浏览

ruby-on-rails - 如何使用 Netflix fast_jsonapi 与 Mongoid 关系

如何为 fast_jsonapi 添加 Mongoid 关联?

我正在尝试从我的 rabl 序列化升级到 fast_jsonapi。这甚至可能吗?

Mongoid 5.4 fast_jsonapi 1.5

0 投票
1 回答
357 浏览

ruby-on-rails - 为什么关系中的 JSON 补丁数据不能通过 Ruby on Rails 保存?

我有一个 Ruby on Rails api,其中数据以 JSON 格式处理。当我想更新一个实体时,所有属性都在持续更新,但改变的关系并没有得到正确处理,实体与以前一样。

PATCH前后的JSON数据:

补丁输入:

这是我的模型,Candidates 和 OccupationalFields 通过一个 CandidatesOccupationalField 的 has_many belongs_to_many 关系相关:

这是使用的控制器:

JSON 格式由 fastjsonapi 处理,这是使用的序列化程序:

谢谢您的帮助。

0 投票
0 回答
726 浏览

ruby-on-rails - 如何在 Fast Json Api 或 Active Model Serializer 中为 STI 模型提供 2 个不同的序列化器

我有一个workflow模型和 2 种工作流程

  1. normal_workflow
  2. special_workflow

有一个project模型与使用has_many/belongs_to关联的工作流模型相关。

现在,为了获取项目的所有工作流程,我们有一个WorkflowsController.

我想返回一组具有以下要求的工作流(其中包括 2 条记录,一条为normal_workflow,另一条为special_workflow):

  1. NormalWorkflowWorkflow必须仅显示带有一些元信息的所有字段的子集。
  2. SpecialWorkflow必须显示Workflow具有某些元的字段的不同子集。

type实现这一点的一种方法是检查workflow每个属性和关系的 。我认为这种方法不是很好,因为当工作流类型增加时,序列化程序中的条件也会增加。

因此,我正在寻找一种更简洁的解决方案,这将有助于保持代码干燥并且对其他类型也具有一定的可扩展性。(它可能正在使用一些装饰器或任何其他对象)