gpt4 book ai didi

ruby-on-rails - simple_form_for : Removing root model name from params

转载 作者:行者123 更新时间:2023-12-04 06:30:13 26 4
gpt4 key购买 nike

当我使用 simple_form_for @model 创建表单时,提交后的 params 具有分组在 params[model] 下的所有属性。我如何让 simple_form 删除这个分组,而是直接发送它(在 params root 下)?

<%= simple_form_for @user, do |f| %>
<%= f.input :name %>
<%= f.input :password %>
<%= f.submit %>

现在,名称和密码属性通常会在 params[:user][:name]、params[:user][:password] 等下发送。如何让 simple_form 将这些作为 params[:name]、params[:密码]等?

谢谢!
拉姆库马尔

ps:如果您想知道为什么我需要这个,我的大部分应用程序将用作 API,并且我已经构建了一组方法来验证请求,这些方法期望某些属性在 root 中。在极少数情况下(忘记密码),我实际上需要呈现一个表单,我正在寻找一种使用这些方法的方法。

最佳答案

您可以通过将 input_html 传递给它来显式定义输入的名称:

  input_html: { name: :name }

(我自己需要这个来将资源发送到第三方端点并重定向到我这边,这依赖于普通的属性名称,但我实际上不想通过标签建立标签和输入;))

另见 simple form builder impl

关于ruby-on-rails - simple_form_for : Removing root model name from params,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15167679/

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