【发布时间】:2016-06-17 13:09:58
【问题描述】:
我正在尝试将 locals(prod: @product.id) 传递给我的控制器中的 AMS,如下所示:
@options_json = ActiveModel::SerializableResource.new(@option_types, prod: @product.id)
@options_json = @options_json.to_json(serialization_context: ActiveModelSerializers::SerializationContext.new(request), serialization_options: {prod: @product.id})
我不确定是在初始化期间还是在调用to_json 期间传递它。此外,我无法在我的OptionTypeSerializer 中阅读此传递的参数。我尝试过使用 options[:prod]、serialization_options[:prod]、serialization_opts[:prod] 以及我在 stackoverflow 上找到的一些不同的解决方案,但没有一个有效。
我的 AMS 指向 master 并且在我的 gemfile.lock AMS 版本中是 active_model_serializers (0.10.0.rc5)
也尝试使用:
@options_json = ActiveModel::SerializableResource.new(@option_types, serialization_context: ActiveModelSerializers::SerializationContext.new(request), prod: @product.id).to_json
但是将instance_options[:prod]的值设为null,虽然它不是null
【问题讨论】:
标签: ruby-on-rails-4 active-model-serializers