我有一个名为布尔值的模型draft
我只想在draft == false
.
我的模型
if self.draft == false
validates :name, :presence => true, :length => { :maximum => 45 }
validates :description, :presence => true
validates :blurb, :presence => true, :length => { :maximum => 175 }
validates :category_id, :presence => true
validates :location_id, :presence => true
validates :goal, :presence => true
else
end
在我的控制器中
def new
@item.new(:draft => false) || @item.new(:draft => true)
def create
if params[:commit] == "Create Item"
@cause = Item.new(params[:item], :draft => false)
elsif params[:commit] == "Save Changes"
@cause = Item.new(params[:item], :draft => true)
end
它完全忽略了我的 if 语句,并在单击时验证它是否为真Save Changes
。
建议将不胜感激。