2011-12-16 1 views
1

私は多くのフィールドを持つユーザーモデルを持っています(この例では30としましょう)。ユーザーがサインアップすると、最初の10件だけが記入されます。ログインして情報を完成させたい場合は、2ページで残りのページを処理します(1ページは11-20を、他のハンドルは21 -30)。複数のページにわたるレールモデルの検証

11-20を処理する最初のページに当たったときに、すべてのフィールドを入力するようにしたいと思います(3つに答えて残りを選択してください) )。

21-30を扱う2番目のページと同じです。

これを処理するにはどうすればよいでしょうか?私はactiverecordでrails 3.1を使用しています。私のモデルに次のような簡単なことをすると、すべてのフィールドを入力せずにユーザーを作成することはできません( "validates:user_summary、:presence => true")。

ありがとうございます!

+0

[この他のstackoverflowのスレッド] [1]に役立つかもしれない [1]:http://stackoverflow.com/questions/2603464/how-to-create-wizard-forms-in-ruby-レール上 – leonardoborges

+0

私が持っていた考えは、2つのモデルを作成することでした。ユーザーのための1つ。ユーザーの追加情報と非予備情報のためのもの。 2〜3ページでは、モデルに検証要件があります。これが最高のアイデアであるかどうかは分かりませんが、コメントです。 – Trip

答えて

3

私はあなたがこのタイプの問題を扱うために多段階フォーム(別名ウィザード)を実装するかもしれないと思います。

ライアンベイツは

Multistep form tutorial

は、多段階のフォームのためにそこに、おそらくいくつかの宝石あります被写体に素晴らしいチュートリアルをやった

別の解決策は、リンクに行くことができる部分validation.Youを実装することであろうこの件に関する素晴らしいブログ記事です。

Partial validation blog post

はそれを始めるために役立つことを願っています。

+0

素晴らしい情報!ありがとう! – Jason

関連する問題