J'essaie de créer un formulaire simple qui passe quelques paramètres à un contrôleur.Le formulaire avec l'URL personnalisée continue de soumettre à la méthode Create
Voici ce que j'ai:
<%= form_tag({url: order_pizza_path}, method: :post) do %>
<%= hidden_field_tag :id, value: 0, name:"tag-1" %>
<!-- hidden field is then filled in with js -->
<%= submit_tag "Submit" %>
<% end %>
<!-- routes: -->
get 'pizza/new' => 'pizza#new', as: 'new_pizza'
post 'pizza' => 'pizza#create', as: 'create_pizza'
post 'order_pizza' => 'pizza#order', as: 'order_pizza'
Mais quand je soumets, il continue d'essayer de pointer vers la méthode Create
dans mon contrôleur de Pizza. Je continue à obtenir l'erreur suivante:
ActionController::ParameterMissing in PizzaController#create
param is missing or the value is empty: pizza
URL La forme est /pizza
. Ceci est l'URL de l'erreur: /pizza?method=get&url=%2Forder_pizza
Cela se produit même si je change à une requête GET POST pas. Pourquoi mon navigateur continue-t-il d'essayer la méthode Create
?
Bizarre, j'aurais juré utilisé ma syntaxe avec succès avant. Merci! Savez-vous pourquoi le navigateur est en train de créer par défaut plutôt que de lancer une erreur? –
Vérifiez ma réponse mise à jour. –