簡體   English   中英

從 Rails 表單構建器獲取輸入名稱

[英]Get input name from Rails form builder

如何獲取帶有表單輸入名稱的字符串?

<%= form_with model: @post do |f| %>
  <%= f.text_field :name %>
  <!-- Will produce HTML <input type="text" id="post_name" name="post[name]" value="" /> -->
<% end %>

問題是如何在不生成輸入名稱的情況下獲取輸入名稱的名稱? 這個例子是否應該是一個字符串“post[name]”

當您在form_with model: @post塊中時,您可以像這樣構建"post[name]"字符串:

"#{dom_class(f.object)}[name]"

查看dom_class的文檔

您可能正在尋找的是object_name方法

f.object_name應該返回"post"

它也適用於多個嵌套fields_for

<%= form_with model: @team do |team| %>
  <%= team.fields_for :players do |player| %>
  <%# for 1st player: player.object_name #=> "team[players_attributes][0]" %>
<% end %>

無論您遇到什么情況,您仍然必須在括號"[field_name]"之間連接您的字段名稱,因此您可以輕松地為您的輸入字段構建正確的名稱

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM