2011-08-24 50 views
3

即使我們添加了最多的解釋錯誤消息和make use of some good practices這樣做,users simply don´t read error messages。我們擁有的最經常性的支持之一是錯誤已經由我們的用戶未讀取的驗證涵蓋。Rails插件跟蹤驗證錯誤

我們的軟件有一個控制面板,用於支持人們快速訪問他們可能需要的任何有用信息,以提供快速和高質量的支持。

我想在此控制面板中添加每個用戶上次驗證錯誤的列表,以便我們可以快速識別用戶面臨的問題是否僅僅是驗證問題。

是否有任何插件允許我在我的應用程序的任何模型中對任何驗證錯誤編寫回調?

我倒是喜歡能夠寫出這樣的事情

def on_any_validation_error(model, params) 
    #my logic to add to some log control database backed or not  
end 

回答

3

我不知道這樣的一個插件存在,但我只是打了一下與after_validation回調,你可以寫一個類似如下的初始化器:

def log_errors 
    log(self) unless errors.blank? 
end 
ActiveRecord::Base.send(:after_validation,:log_errors) 

然後你必須在日誌方法中實現你的邏輯。