【问题标题】:How to pass params through a checkbox tag如何通过复选框标签传递参数
【发布时间】:2021-10-25 13:45:20
【问题描述】:

我有一个带有复选框的简单表单。 我正在尝试通过复选框传递sale_id。但是在控制器中,sale_id 不在 params 哈希中。

我尝试了以下不同(不成功)的方法:

<%= ff.check_box :refund, sale_id: sale.id, checked: true %>

<%= ff.check_box :refund, data: {sale_id: sale.id}, checked: true %>

【问题讨论】:

  • 您提交此表单时能否显示您的终端日志?
  • 为什么不直接调用复选框而不是 refund ?它只是一个布尔值,让您的生活更轻松。
  • 你能给这段代码一些上下文吗?它非常不清楚您实际上要做什么。您是否有销售清单并且用户正在选择要退款的销售?

标签: ruby-on-rails checkbox parameters simple-form


【解决方案1】:

如果您想传入单个销售 ID,您可以将任意值分配给选中/未选中状态,方法是将它们作为第三个和第四个参数(在选项之后)传递,例如

<%= ff.check_box :refund, {}, sale.id, nil %>

如果是要退款的东西,那么你可以传入multiple: true作为选项,例如

<%= ff.check_box :refund, {multiple: true}, sale.id, nil %>

有关复选框的更多信息,请参阅the docs

正如一些评论者所指出的 - 非常不清楚您为什么要这样做,并且可能有更好的模式/方法。如果您在控制器/模型中包含您要执行的操作以及您希望如何使用该值,将会很有帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-20
    • 2017-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-07
    • 1970-01-01
    相关资源
    最近更新 更多