###前提・実現したいこと
ActiveRecordでModelから取って来た配列の最初の行と最後の行に、同様のモデルのレコードを一行ずつ追加したいです。
(Modelからとってきた値を元に集計して、最初の行と最後の行に表示するレコードが決まるため。)
どのようにすればActiveRecordに対してレコードを追加できるでしょうか。
###該当のソースコード
以下のようなことを実現したいです。
controller { @data = model.getdata } model { def self.getdata //実際にはユーザーに指定されたレコード数を取得する。 仮に20レコードとする。 modeldata = Model.select(:kingaku).offset(0).limit(20) //modeldata[1]~[21]に取得したデータ。 [0]と[21]には異なったデータを入れたい modeldata[0].kingaku = 別のテーブルから一行目の金額を別途取得 modeldata[22].kingaku = kingaku[1]~[21]をsumした金額 end } view //Viewではmodelをeachで回すだけで22レコードを表示したい <%= @data.each do|data|%> <%= data.kingaku %> <%= end%>
###試したこと
現在は一行目と最後の行を別のインスタンス変数に入れて表示していますが、Viewに無駄なコードが増えるので、上記のように同じモデルに格納したいです。
###補足情報(言語/FW/ツール等のバージョンなど)
ruby on rails5
postgresql
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/04/26 15:11