gpt4 book ai didi

ruby-on-rails-3 - 如何从 rails 中的 text_area 填充多个字段?

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

我的模型有四个字段。所以对于数据输入我通常会做这样的事情

<%= form_for @user do |f| %>
<p>
<%= f.label :field1 %><br />
<%= f.text_field :field1 %>
</p>
<p>
<%= f.label :field2 %><br />
<%= f.text_field :field2 %>
</p>
<p>
<%= f.label :field3 %><br />
<%= f.text_field :field3 %>
</p>
<p>
<%= f.label :field4 %><br />
<%= f.text_field :field4 %>
</p>
<p class="button"><%= f.submit %></p>
<% end %>

我想创建一个带有一个 text_area 的 View ,以启用大量数据输入。

这个想法是将多行粘贴到 text_area 中,每行包含由逗号分隔的四个字段。

在提交时,我会将数据推送到数据库中。

这样的表格会是什么样子?

我将在哪里解析 text_area 的内容以及如何保存数据?

谢谢
托马斯

附言当每个人都在考虑要回复什么时,我想知道计算列是否会成为这里的解决方案。我的意思是这里没有什么可计算的,但至少我可以用模型中的一个字段创建一个表单,然后将数据拆分到其他字段。

最佳答案

您所需要的只是一个虚拟属性。那里有一个非常有用的铁轨 here .

基本上,您会在模型中添加一个字段,例如名为 mass_data , 并为其创建 getter 和 setter 来与 mass_data 相互转换格式化为与您的模型相对应的四个单独字段。然后,您可以在表单中为该属性添加一个文本字段,就像它是一个真实的属性一样。

即,在您的 Controller 中,执行以下操作:

def mass_data
[#{field1},#{field2},#{field3},#{field4}].join(',')
end

def mass_data=(data)
split=mass_data.split(',')
self.field1=split.first
...
self.field4=split.last
end

然后只需在表单 View 中添加一个文本字段:
<%= f.text_field :mass_data %>

关于ruby-on-rails-3 - 如何从 rails 中的 text_area 填充多个字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7190109/

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