2016-10-12 4 views
0

私はこの質問をするのに適切な言語を本当に知りません。しかし、私は自分のレールSQLiteデータベースを更新し、その値をユニークに保つことを試みています。だから私は重複する値を作成したくありません。私のテーブルには列 "X"があり、列 "X"には10,20,30または40のフィールド値が1つしかありませんが、すべて値0を持つことができます。重複したデータを作成せずにRailsでSQLiteを更新しようとしています

私はヘルパーを使用して、10の値をすべてクリアしてから、更新するフィールドの新しい値10を割り当てようとしました。

ヘルパー

def clear_then_assign(number) 
    Gallery.where(UserCode: current_user.code).rewhere(SPCode: number).each do |nix| 
    nix.SPCode = nil 
    end 

リターン(数) 終了

インラインコード:

<% if current_user.Admin == true %> 
<label for="spread">Photo Spread:</label> 
    <br><%= f.radio_button :SPCode, clear_then_assign(10), :checked => false %> Lead 
    <br><%= f.radio_button :SPCode, 20, :checked => false %> Pic 2 
    <br><%= f.radio_button :SPCode, 30, :checked => false %> Pic 3 
    <br><%= f.radio_button :SPCode, 40, :checked => false %> Editorial 
    <br><%= f.radio_button :SPCode, 'nil', :checked => false %> NONE 
<% end %> 

これは私にエラーを与えるものではありませんが、それは絶対に何もしません。助言がありますか。

+0

興味があるだけ、誰もが私がここで言おうとしたものを手に入れるのでしょうか? –

答えて

0

私は私のコードの読み取りになりまし保存使用していませんでした申し訳ありません。

def clear_then_assign(number) 


    Gallery.where(UserCode: current_user.code).rewhere(SPCode: number).each do |nix| 
     nix.SPCode = 0 
     nix.save 
    end 

リターン(数) 終了