gpt4 book ai didi

ruby-on-rails - 如何使用数据库表中的动态表单字段创建 Rails form_for?

转载 作者:数据小太阳 更新时间:2023-10-29 06:54:21 25 4
gpt4 key购买 nike

如果有人在某处完整地询问和回答了这个问题,我深表歉意。不确定我是否正在使用正确的 Rails 搜索这个问题。

我想根据存储在数据库中的字段创建一个 Rails 表单。这是我的模型到目前为止的样子。

class Field < ActiveRecord::Base
belongs_to :form
end

class Form < ActiveRecord::Base
has_many :fields
end

到目前为止,字段模型非常简单,只有 type:string 和 required:boolean 列。名称是我要创建的控件的名称(文本框、复选框、单选按钮)。理想情况下,我想做这样的事情:

<%= form_for [something here] do |f| %>
<% @fields.each do |field| %>
<%= field.type %><br />
<% end %>
<% end %>

我正在努力寻找一种方法来将行 <%= field.type %> 替换为可以正确呈现 field.type 的标记。

这可能吗?在将字段类型和值存储为 json/xml 的字段模型中使用有效负载列会更好吗?

最佳答案

就像@TuteC 提到的,如果要保存类型,则可以使用 .send 方法动态调用每个字段:

<%= form_for [something here] do |f| %>
<% @fields.each do |field| %>
<%= f.send(field.type.to_sym, field.name) %><br />
<% end %>
<% end %>

关于ruby-on-rails - 如何使用数据库表中的动态表单字段创建 Rails form_for?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10470648/

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