2011-08-12 14 views
8

मैंने मौजूदा नियंत्रक पर एक नया पृष्ठ बनाया है।form_for के साथ कार्रवाई कैसे सेट करें?

मैंने नियंत्रक पर 2 क्रिया विधियों को जोड़ा: prompt_user और process_feedback।

तो मैं के माध्यम से

redirect_to :controller => :users, :action => :prompt_user 

पृष्ठ पर आते हैं और form_for कोड लग रहा है

<% form_for :user, @user do |f| %> 

निम्नलिखित में से कौन एचटीएमएल

<form action="users/prompt_user" method="post"> 

सूचना कार्रवाई, जहां prompt_user है उत्पन्न करता है की तरह क्योंकि मैं इसे process_feedback पर सेट करना चाहता हूं। मैंने सोचा कि मैं एक बटन

<%= submit_tag "Process feedback" %> 

के साथ कार्रवाई को बदल सकता है लेकिन यह काम नहीं करता है।

तो मेरा सवाल यह है कि मैं process_feedback पर कार्रवाई कैसे बदल सकता हूं?

इसके अलावा, जैसा कि आप शायद बता सकते हैं, मैं रेल के लिए बहुत नया हूं, इसलिए यदि मैं कुछ विशेष रूप से कर रहा हूं, तो मुझे यह पता लगाना अच्छा लगेगा कि यह क्या है।

उत्तर

15

इस स्मृति से है, लेकिन मुझे लगता है कि आप कुछ इस तरह कर सकते हैं:

form_for :user, @user, :url => { :action => :prompt_user } do |f| 
+0

यही वह है जिसे मैं ढूंढ रहा हूं। आपका बहुत बहुत धन्यवाद। –

+0

बीटीडब्ल्यू, यह सभी रेल दस्तावेज़ों में उपलब्ध है (http://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html)। – jonnii

1

वैकल्पिक रूप से एक ही वाक्य रचना के साथ form_tag का उपयोग कर पहुंचा जा सकता है:

इस प्रश्न पर मेरा उत्तर देखें: यहां https://stackoverflow.com/a/37145293/1248725

संबंधित मुद्दे