2014-01-13 44 views
4

的軌道辦法,我是新來的Rails和使用Rails 4.我已經開始某種形式的創建/編輯一些模型,並增加了一些驗證,因而在服務器端工作正常。做客戶端驗證(與simple_form軌道4)

我認爲Rails的本來的東西建在處理客戶端驗證 - 證明事實並非如此。

我已搜查谷歌和發現「client_side_validation」,因此不再維持,我不認爲作品的Rails 4反正。

似乎有不被明顯轉到庫爲Rails客戶端驗證。那麼處理這個問題的'Rails方法'是什麼?滾動你自己的?使用jQuery複製邏輯客戶端?使用html5驗證並回退到服務器端,當它不是他們的?還是有一個庫(最好能用simple_form),我可以安裝和使用?實現這一

回答

2

client_side_validations,但不再保留。可能最好的方法是使用一些jQuery插件,如jquery-validation

+1

我正在考慮使用jquery。但我不喜歡,我將不得不重複我的驗證邏輯客戶端 – Ben

+0

這目前不正確(2017年10月)。 client_side_validations回來了,並且活着:) –

+0

@EduardoCobuci你在rails 5上試過這個寶石嗎? – matQ

1

一種方式是在軌道4,5是使用客戶端驗證寶石:http://rubygems.org/gems/rails4_client_side_validations

這裏這傢伙正在使用它:Client Side Validations and Rails4

Railscasts提供了一個很好的教程(Rails 3中)就可以了這裏: http://railscasts.com/episodes/263-client-side-validations

+0

該railscast是好的,但不幸的是有點過時了。我跟着這個鏈接給那個在stackoverflow上問這個問題的人 - 並且這些說明很有用。我只是認爲會有穩定的,標準的rails方式,因爲它很常見 – Ben

0

我能夠使用原來的client_side_vlaidations,在目前是非常活躍的一個分支。我正在使用最新版本的simple_form,rails 4.1.8和這個client_side_validations。基本配置簡單的設置。

2

軌道4 +簡單的形式:要與simple_form安裝「客戶端驗證」成功,你應該檢查最新版本從GitHub直接用最新的分支。

釋放的寶石不使用Rails工作> = 4.0

gem 'client_side_validations', github: 'DavyJonesLocker/client_side_validations' 
gem 'client_side_validations-simple_form', github: 'DavyJonesLocker/client_side_validations-simple_form' 

確保你的寶石文件不使用這些版本

client-side Validation 3.2.5 
client_side_validations-simple_form 2.1.0 

這些版本不支持軌道4.2.0

更多詳情請查看此鏈接, https://github.com/DavyJonesLocker/client_side_validations-simple_form/issues/41