首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在FastJsonAPI中将参数从控制器传递到序列化程序?

如何在FastJsonAPI中将参数从控制器传递到序列化程序?
EN

Stack Overflow用户
提问于 2019-03-18 12:24:50
回答 1查看 2.9K关注 0票数 2

我有一个控制器方法drop_down_values,在该方法中,我选择一组值并在json中进行响应,使用序列化程序构建对象。我用的是FastJson Api。我想知道,如何访问序列化程序中的控制器中的其他变量。

代码语言:javascript
复制
def drop_down_values   
    @drop_down_values = IndustrySectorList.all
    @values = @drop_down_values.pluck(:industry_sector)
    render json: DropDownValueSerializer.new(@drop_down_values).serialized_json
end

我需要在序列化程序中使用@values变量。如何将此传递给序列化程序?我无法在序列化程序中直接访问这个变量。

序列化器:

代码语言:javascript
复制
class DropDownValueSerializer
  include FastJsonapi::ObjectSerializer
  attributes :id
  end

堆栈和版本-

  1. Rails - 5.2.1
  2. Ruby-2.5.1
  3. FastJsonAPI - 1.5
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-18 15:49:30

我不太确定您要做什么,但是序列化程序通常是一种资源。在这种情况下,可以将params传递到下拉序列化程序中:

代码语言:javascript
复制
DropDownValueSerializer.new(movie, {params: {values: @values}})
代码语言:javascript
复制
class DropDownValueSerializer
  include FastJsonapi::ObjectSerializer
  attributes :id

  attribute :values do |drop_down_value, params|
    params[:values]
  end

end
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55221354

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档