2012-02-09 4 views
2

私はサインアップ時にユーザーのためのウィザードを構築しようとしています。 私はjavascriptを使用できません(この種のフォームの一般的な解決策は何ですか?) 私のウィザードのすべてのページはJavascriptに依存しているため、一度にすべて読み込むと時間がかかります。 そして、ウィザードは3つの異なるリソースを扱います。Ruby on Railsでウィザードを構築する

私は現在取り組んでいるアプローチを試してきましたが、率直に言っても気分が悪いです。

(追記:ユーザーは、「まともな露出」宝石で露光される):その後、私はリソースごとに1つの更新アクションを持っている

def index 
    case current_step 
     when 'description' 
     render 'users/edit' 
     when 'contact' 
     render 'contact_informations/edit' 
     when 'location' 
     render 'location/edit' 
    end 
    end 

    def current_step 
    @current_step || STEPS.first 
    end 

    def next_step 
    @current_step = STEPS[STEPS.index(current_step)+1] 
    index 
    end 

    def previous_step 
    @current_step = STEPS[STEPS.index(current_step)-1] 
    index 
    end 

    def final_step 
    @current_step == STEPS.last 
    end 

(これは

は、これは私のウィザードコントローラです同じウィザード内のコントローラからの呼び出し操作に問題があるようです。 これに基づいてこれまでにこれが行われたことは一度もありませんでしたが、それは間違っています。

私が単純に達成しようとしていること: リソースの元のRESTコントローラを混乱させたくありません。 すべてのステップを検証する必要があります update_attributesが失敗した場合、エラーのあるフォームを再レンダリングします。 update_attributesが成功した場合、次のステップをレンダリングします。

私はこれで私のショットは動作しませんし、物事を行うの "レールの道"のように感じることはありません。 私はRyan Batesのrailscastを「複数のステップ形式」で見てきましたが、それ以降もこれを理解することはできません。

ありがとうございます。 ティム

答えて

関連する問題