2016-04-19 5 views

答えて

0

enumを定義すると、enumに直接接続するいくつかのメソッドが作成されます。

を無効にしますか?

class ProductsController < ApplicationController 
private 
    def set_product 
    @product = Product.friendly.find(params[:id]) 
    if @product.disable? 
     @products 
    else 
     redirect_to root_path 
    end 
    end 
0

私はあなたが@ porductのステータスがnilであるためだと思う、多分あなたはそれが既に作成されたレコードには何も変更されません0

class SetProductStatusToZero < ActiveRecord::Migration 
    def change 
    change_column :products, :status, :integer, default: 0 
    end 
end 

にデフォルトのステータス値を設定するために、移行を必要とします。これを行うには、レーキタスクを作成するか、単にレールコンソールに入り、すべてのレコードを更新する必要があります。

関連する問題