Domanda

Ho un controller chiamato form_questions_answers con un metodo in esso chiamato edit_rule ma quando eseguo un post su / form_questions_answers / edit_rule / 60 Rails mi dice:

Routing Error
No route matches "/form_questions_answers/modify_rule/60" with {:method=>:post}

Perché sta accadendo, ho map.resources: form_question_answers in route.rb e map.connect ': controller /: action /: id' sul in fondo al file route.rb, quindi perché l'azione edit_rule non viene attivata?

È stato utile?

Soluzione

/ form_questions_answers / edit_rule / 60 non accetterebbe il POST su base map.resources. Sarebbe un GET o un PUT in linea con REST.

Potresti dare un'occhiata guida al routing delle rotaie per alcune informazioni sui percorsi.

Buona giornata in Turchia!

Altri suggerimenti

Se stai utilizzando percorsi basati sulle risorse, probabilmente desideri rimuovere l'impostazione percorsi . Detto questo, probabilmente vorrai aggiungere un nuovo membro alla tua rotta form_question_answers in questo modo:

map.resources 'form_questions_answers', :member => { :modify_rule => :post } 

Puoi leggere ulteriori informazioni sull'aggiunta di opzioni ai tuoi percorsi qui .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top