id aiment faire une forme en plusieurs étapes avec des rails en utilisant les actions edit
et update
. donc je voudrais que ce soit comme step 1
du formulaire, et l'utilisateur remplit son nom, adresse et numéro de téléphone. L'utilisateur clique alors sur save and continue
et remplit alors son adresse de livraison, puis clique sur save and continue
et remplit son adresse de facturation. J'ai vu la version de Ryan Bates, mais ce n'est pas ce que je cherche. Je voudrais que la commande soit sauvegardée après la première étape, donc si l'utilisateur ne finit pas son formulaire, je peux l'appeler et lui demander ce qui s'est mal passé. quelqu'un peut-il me référer à un tutoriel ou me donner un exemple de la façon de faire un formulaire de commande en utilisant les méthodes edit
et update
?rails forme multi-forme
Répondre
Généralement, cela signifie que vous devrez mettre des conditions sur les validations de votre modèle. Certains sous-ensemble de validateurs doit appliquer à chaque page de formulaire:
class User
validates_presence_of :first_name
validates_presence_of :last_name
validates_presence_of :street, :if => :on_page_two?
validates_presence_of :city, :if => :on_page_two?
validates_presence_of :postal_code, :if => :on_page_two?
validates_presence_of :state, :if => :on_page_two?
validates_presence_of :country, :if => :on_page_two?
validates_acceptance_of :terms_and_conditions, :if => :on_page_three?
def on_page_two?
# whatever you need to determine the page number
end
def on_page_three?
# whatever you need to determine the page number
end
end
Ce n'est pas jolie, mais je recommande fortement un modèle comme celui-ci. Quelque chose de plus compliqué et vous devrez le réécrire lorsque votre flux d'inscription change.
Il existe différentes approches à ce problème.
Ma solution préférée particulière consiste à implémenter quelque chose comme une «machine d'état» dans le modèle. De cette façon, je peux persister la progression d'un, par exemple, une forme multi-étapes, sans avoir à se contenter de plus d'actions que new/create et edit/update.
Je travaille actuellement sur une application de machine d'état longue lourde en utilisant la gemme State Machine pour les rails.
J'espère que cela vous aidera!
Il existe un excellent Railcast sur la création de formulaires d'assistant multi-étapes, que vous pouvez trouver here. Il utilise la gemme Wicked.
- 1. rails 3 geocoder multiforme
- 2. Rails structure multiforme semble un peu hors
- 3. REST/JSON avec images et objets: JSON multiforme ou pur
- 4. Quelle est la méthode d'entrée d'un projet multiforme?
- 5. rails conditionnel forme/remote_form
- 6. Ruby rails - forme invalide
- 7. Rails forme assistance échoue
- 8. Rails forme soumettre problème
- 9. rails forme multiple sélectionne
- 10. Rails forme imbriquée build
- 11. problème d'enregistrement de rails forme
- 12. forme extjs soumettre des rails
- 13. Rails forme imbriquée pour belongs_to
- 14. jquery-fileupload-rails - forme brisée
- 15. Rails: problème avec la forme
- 16. Rails forme dans Bootstrap Modal
- 17. Forme imbriquée dans les rails
- 18. Ruby on Rails forme sélectionnez
- 19. forme de filtre dans Rails?
- 20. rails nils sous une forme
- 21. Rails forme des erreurs - validation
- 22. Interdire l'esperluette sous forme Rails
- 23. Rails: collection_select sous forme d'édition
- 24. Rails - Eléments de forme conditionnelle?
- 25. Rails nouvelle forme -> néant
- 26. Rails forme imbriquée ajoute avant la forme parente
- 27. Rails forme un assistant se comportant bizarrement
- 28. rails étendant la forme d'enregistrement de plan
- 29. Mise en forme [] tableau comme params Rails
- 30. Autre forme imbriquée de rails question