gpt4 book ai didi

ruby-on-rails - 将选项传递给 ActiveModel 序列化程序

转载 作者:行者123 更新时间:2023-12-04 14:29:37 25 4
gpt4 key购买 nike

从 Controller 使用序列化程序时,我可以像这样向它传递额外的选项

render json: user, some_option: 'foobar

那我可以引用 some_option在序列化程序中作为
serialization_options[:some_option]

但是,如果我直接调用序列化程序
MySerializer.new(user, some_option: 'foobar')

我无法获得额外的选项,因为 serialization_options是一个空对象。

最佳答案

对于 v0.9

您可以拨打以下电话:

MySerializer.new(user).as_json({some_option: 'foobar'})

如果您在另一个序列化程序中执行此操作,并且还需要传递范围和当前的 serialization_options,则可以执行以下操作:
class MyParentSerializer    

has_one :user

def user
MySerializer.new(object.user, { scope: scope }).as_json(serialization_options.merge({ some_option: 'foobar' }))
end

end

关于ruby-on-rails - 将选项传递给 ActiveModel 序列化程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37618192/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com