से पैरामीटर पास करना मुझे एक नौसिखिया प्रश्न मिला। मैं अपने कंट्रोलर को अपने व्यू से एक वैरिएबल पास करने की कोशिश कर रहा हूं। क्या वैसे भी मेरे नियंत्रक में मेरी विधि मेरे दृश्य से चर प्राप्त कर सकती है?दृश्य से नियंत्रक
Post view: show.html.erb:
....
<%=link_to "Add relationship", :method => :add_relationship(@rela) %>
Controller: post.controller.rb:
def add_relationship(rela)
@post = Post.find(params[:id])
if current_user.id == @post.user_id
@post.rel_current_id = rela.id
@post.save
redirect_to relationships_url
else
redirect_to posts_url, :notice => "FY!"
end
end
अग्रिम धन्यवाद :)
आप 'params' हैश इस्तेमाल कर सकते हैं ... – Jon
यह वैरिएबल प्रकार निर्भर करता है। आप ऑब्जेक्ट्स को नियंत्रक को पास नहीं कर सकते हैं। आप एक छिपे हुए टैग – adcosta
में इसे परिभाषित करने वाले सरल पैरा को पारित कर सकते हैं, मैं वास्तव में केवल उस पृष्ठ की वर्तमान आईडी में अपने मॉडल में एक आईडी बदलना चाहता हूं। मेरे पृष्ठ में एक आईडी है, इसलिए मैं उस मॉडल में पास करने की कोशिश कर रहा हूं। अगर मैं अपने पेज से पैरामीटर पास करना चाहता हूं और इसे अपने पोस्ट मॉडल (मेरे पोस्ट कंट्रोलर के साथ) में सहेजना चाहता हूं। मुझे यह कैसे करना है? कुछ "इस लिंक पर क्लिक करें" जैसे कुछ और आईडी को बदल देगा। <% = link_to "आईडी बदलें",: method => add_relationship, params [: rel_current_id = @ rela.id] – OXp1845