سؤال

لدي وحدة تحكم تسمى form_questions_answers مع طريقة تسمى modify_rule ولكن عندما أقوم بتنفيذ وظيفة ل /form_questions_answers/modify_rule/60 يقول لي ريلز:

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

لماذا يحدث هذا، لقد map.resources :form_question_answers في الطرق.rb، و map.connect ':controller/:action/:id' في الجزء السفلي من ملف Routes.rb، فلماذا لا يكون modify_rule يتم تفعيل الإجراء؟

هل كانت مفيدة؟

المحلول

وسوف /form_questions_answers/modify_rule/60 لا يقبل وظيفة على أساس map.resources. وسيكون إما GET أو PUT تمشيا مع REST.

وقد ترغب في إلقاء نظرة القضبان دليل التوجيه للحصول على بعض المعلومات حول الطرق.

وسعيد اليوم تركيا!

نصائح أخرى

إذا كنت تستخدم طرقًا تعتمد على الموارد، فربما تريد إزالة ملف الطرق الافتراضية.ومع ذلك، ربما تريد إضافة عضو جديد إلى حسابك form_question_answers الطريق مثل هذا:

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

يمكنك قراءة المزيد حول إضافة خيارات إلى مساراتك هنا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top