Rails でプロセスにステップを追加する際のベスト プラクティス (または通常のプラクティス) は何ですか?
たとえば、私はSpree e コマース Rails プラットフォームを使用しており、製品を「カートに追加」しようとするときに入力する複数ステップのフォームを追加したいと考えています。
カートに製品を追加する現在のスプリーの実装は、基本的に次のとおりです。
ProductsController#show -> OrdersController#edit
これにより、製品がカートに追加され、カートに残ります。
だから私は、コアコードを最小限に変更するために、どうすればプロセスが次のようになるのか疑問に思っています。
ProductsController#show -> SurveysController#show -> (survey stuff...) -> OrdersController#edit
私がやろうと思っていることは次のとおりです。
- "products/show.html.erb" を変更して、surveys_controller.rb に移動します。また、products_controller.rb を put
session[:redirect_to] = order_checkout_pathに変更して、SurveysController で処理できるようにします。 - または、それらの余分なものをポップアップさせて、最後のものに到達したら、元のメソッドを呼び出すようにします。
それの何がいけないの?より良いアプローチは何ですか?これは、より一般的には、コア コードを変更せずにマルチステップ プロセスを設計する方法についての質問です。ウィザードではなく、他のものの途中に余分なものを追加するだけです。
助けてくれてありがとう、ランス