如何制作一列取决于一个模型中的其他列

时间:2019-03-30 14:44:08

标签: ruby-on-rails ruby

  • 有一个模型Pair,它由3个字符串字段组成:arr1arr2arr3
  • 我输入了arr1arr2的值,并且
  • 我希望arr3的值由arr1arr2的相似数字组成
    比较arr1arr2

我不确定要在哪里放置比较代码 arr1arr2,因为
在{{1}中不起作用}方法new

PairsController

表中 @pair = Pair.find(params[:id]) @A = @pair.arr1.split & @pair.arr2.split @arr3 = @A.join(" ") arr1arr2的输出

arr3

布局中arr1和arr2的输入

...
<td><%= pair.arr1 %></td>
<td><%= pair.arr2 %></td>
<td><%= pair.arr3%></td>
...

该表格现在是什么样的:https://i.imgur.com/43olFAi.png

我应该在哪里放置比较代码以及如何将值发送到... <p><%= f.text_field :arr1 %></p> <p><%= f.text_field :arr2 %></p> ...

1 个答案:

答案 0 :(得分:0)

有很多方法可以做到这一点。

例如在模型中使用一些回调。

class Pair < ApplicationRecord
  before_save :set_up_arr3

  def set_up_arr3
    self.arr3 = (arr1.split & arr2.split).join(" ")
  end
end