"✓", "authenticity-6ren">
gpt4 book ai didi

ruby-on-rails - 获取嵌套参数

转载 作者:行者123 更新时间:2023-12-04 07:34:26 29 4
gpt4 key购买 nike

我有一个带有嵌套参数的表单。在下面的示例中,如何在 Controller 中获取“amount_whole”值?

    Parameters: {"utf8"=>"✓", "authenticity_token"=>"KCmBI6RLh0LdUsM2r5H1vhNykS1IXecFe5Lct+TuIGc=", "dec_declaration"=>{"declaration_nr"=>"SAL_2012_0001", "dec_declarationlines_attributes"=>{"0"=>{"amount_whole"=>"75"}}

是这样的吗?

amount = params[:dec_declarations][:dec_declarationlines_attributes][:amount_whole]

最佳答案

您忘记了散列中的 "0" 索引。所以你应该能够像这样访问它:

amount = params[:dec_declaration][:dec_declarationlines_attributes]["0"][:amount_whole]

params hash 使用符号和字符串作为键。

编辑

但是,根据参数的结构判断,您似乎有一个名为 DecDeclaration 的模型,其中有_many DecDeclarationlines 并为该关联接受_nested_attributes。所以你应该能够在 Controller 中像这样使用它:

@dec_declaration = DecDeclaration.build(params[:dec_declaration])
@amount_whole = @dec_declaration.dec_declarationlines.first.amount_whole

因为如果参数出现在该结构中,它会自动将嵌套值分配给关联。

关于ruby-on-rails - 获取嵌套参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10596238/

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