我有一個稱爲Subscription的模型,它在字段[:email,:location]上具有唯一索引。這意味着每個位置可以訂閱一個電子郵件地址。處理控制器中的唯一記錄異常
在我的模型:
class Subscription < ActiveRecord::Base
validates :email, :presence => true, :uniqueness => true, :email_format => true, :uniqueness => {:scope => :location}
end
在我的創作方法。我想處理異常ActiveRecord::RecordNotUnique
與常規錯誤不同。我將如何添加到這種通用的創建方法?
def create
@subscription = Subscription.new(params[:subscription])
respond_to do |format|
if @subscription.save
format.html { redirect_to(root_url, :notice => 'Subscription was successfully created.') }
else
format.html { render :action => 'new' }
end
end
end
`save!`是我錯過的。但是,兩者都可以工作,但是,您的解決方案更徹底。我還在救援線上做了一些小小的修改,說SO需要進行同行評審。 – Dex 2011-02-13 04:49:29