问题标签 [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.
ruby-on-rails - Ruby FastJsonAPI 动态 set_type?
我一直在挖掘FastJsonAPI。效果很好。
是否可以基于每个对象设置set_type
序列化程序定义?
即我正在使用Rails STI(单表继承)。我有一组混合的基础对象和派生对象,我希望每个对象都有不同的类型。
这是我想要的 JSON 输出的假示例:
当然,我确实有一个type
可以使用的对象属性,因为我使用的是 STI。但我不想将其用作属性:我想将其用作 outside type
,如上面的 JSON 所示。
序列化器:
你看,我有一些控制器只能从单个对象type
中提取,对于他们来说,单个对象CarSerializer
或其他对象都很好用。问题是当我使用这样的控制器时,它在 index 方法中聚合了多种车辆类型:
ruby-on-rails - 如何包含与 ActiveRecordSerializer 具有多态关联的嵌套资源?
我正在使用 Netflix 的jsonapi-rails gem 来序列化我的 API。我需要构建一个response.json
包含帖子相关评论的对象。
Post
模型:
多态Comment
模型
PostSerializer
注释序列化器
帖子#index
到目前为止,我只给了我评论类型和 ID,但我也需要评论body
。
请帮忙!
先谢谢了~!
ruby-on-rails - Ruby On Rails:Netflix fast_jsonapi 不渲染它定义的属性
目前我正在使用fast_jsonapi gem来处理 API 请求而不是 AMS。
但是当我想从中删除某些字段attributes
或添加自定义字段时。
它不会出现,并且输出将返回与模型相关的所有字段。
licenses_controller.rb
license_serializer.rb
返回的输出
预期输出:
我错过了一些配置吗?我想,我已经根据 gem 文档遵循了正确的指令。
有什么建议吗?我真的很感激任何帮助:)
ruby-on-rails - 序列化为 json 时如何包含子关联?
在使用 fast_jsonapi gem 之前,我正在这样做:
我的 SchoolSerializer 看起来像:
如何让学生包含在 JSON 结果中?
此外,教室关联包括但它显示所有属性,有没有办法将教室属性映射到 ClassroomSerializer ?
rails-api - 包含符合 JSON API 规范的非关联对象响应
我正在尝试使用JSON API 规范在 Rails 中构建 API
我的用户模型具有与之关联的更改对象。例如,用户可以进行以下更改:
如您所见,该diffs
属性包含一组更改差异,第二个差异是一组对象差异。我想修改这种格式(如果可能的话),使其符合 JSON API 规范。像这样:
并将标签的属性放入包含的部分:
问题:差异是一个对象数组(不是记录,它们没有 ID),其中包含带有记录的字段。是否可以将响应格式化为如此深嵌套的记录(如我的情况下的标签)将引用包含部分中的记录?
我想使用fast_jsonapi gem
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 了解这是模型,从而满足我设置的“标签”出现在参数中的要求吗?
ruby-on-rails - 如何使用 fast_jsonapi 在 Ruby on Rails 中序列化 habtm 关系
我创建了一个 Ruby on Rails API 应用程序,我想在其中使用fast_jsonapi实现一个 JSON api 。现在我正在与未显示的关系作斗争。我必须改变什么?
这是我的 schema.db:
这些是我的模型:
这些是我的序列化程序:
ruby-on-rails - 如何使用 Netflix fast_jsonapi 与 Mongoid 关系
如何为 fast_jsonapi 添加 Mongoid 关联?
我正在尝试从我的 rabl 序列化升级到 fast_jsonapi。这甚至可能吗?
Mongoid 5.4 fast_jsonapi 1.5
ruby-on-rails - 为什么关系中的 JSON 补丁数据不能通过 Ruby on Rails 保存?
我有一个 Ruby on Rails api,其中数据以 JSON 格式处理。当我想更新一个实体时,所有属性都在持续更新,但改变的关系并没有得到正确处理,实体与以前一样。
PATCH前后的JSON数据:
补丁输入:
这是我的模型,Candidates 和 OccupationalFields 通过一个 CandidatesOccupationalField 的 has_many belongs_to_many 关系相关:
这是使用的控制器:
JSON 格式由 fastjsonapi 处理,这是使用的序列化程序:
谢谢您的帮助。
ruby-on-rails - 如何在 Fast Json Api 或 Active Model Serializer 中为 STI 模型提供 2 个不同的序列化器
我有一个workflow
模型和 2 种工作流程
- normal_workflow
- special_workflow
有一个project
模型与使用has_many/belongs_to
关联的工作流模型相关。
现在,为了获取项目的所有工作流程,我们有一个WorkflowsController
.
我想返回一组具有以下要求的工作流(其中包括 2 条记录,一条为normal_workflow
,另一条为special_workflow
):
NormalWorkflow
Workflow
必须仅显示带有一些元信息的所有字段的子集。SpecialWorkflow
必须显示Workflow
具有某些元的字段的不同子集。
type
实现这一点的一种方法是检查workflow
每个属性和关系的 。我认为这种方法不是很好,因为当工作流类型增加时,序列化程序中的条件也会增加。
因此,我正在寻找一种更简洁的解决方案,这将有助于保持代码干燥并且对其他类型也具有一定的可扩展性。(它可能正在使用一些装饰器或任何其他对象)