2012-09-25 18 views
5

यह आंशिक प्रतिपादन के लिए मेरी कोड है के लिए आंशिक अंदर करने के लिए स्थानीय चर पासिंग (@parties संग्रह सही ढंग से बनाई जा रही है, मैं परीक्षण किया है कि):प्रत्येक पाश रेल 3

 <% @parties.each do |party| %> 
      <div class="item"> 
       <%= render 'parties/party', :object => party %> 
      </div> 
     <% end %> 

और यह कोड है आंशिक में:

<%= party.name %> 

हालांकि, मैं निम्नलिखित त्रुटि मिलती है:

undefined method `name' for nil:NilClass 

मैं अपने दिमागी अंत में हूँ, कृपया कोई मदद करें: - |

def index 
    @parties = Party.all 
end 

कि इस parties_controller नहीं है कोई भी परिणाम की यह है:

इसके अलावा, इस नियंत्रक के लिए कोड आंशिक (नियंत्रक के बुलाया default_controller) युक्त दृश्य प्रस्तुत करना है?

उत्तर

10

मैं नीचे की तरह कुछ की कोशिश की है और यह

<%= render :partial => 'party', :object => party %> 

काम किया है और मैं party.name की तरह उपयोग कर सकते हैं। स्थानीय चर का नाम आंशिक नाम के नाम पर रखा गया है जो party है।

नोट: इम यह सोचते हैं कि आपके दोनों partials parties_controller के हैं। तो यह काम करना चाहिए।

अद्यतन: यहाँ Ive फिर

class PostsController < ApplicationController 
    #... ... 
    def index 
     @posts = Post.all 
     @comments = Comment.all #<---- Loading comments from PostsController 
     #... ... 
    end 
end 

#views/posts/index.html.erb 

<% @comments.each do |comment| %> 
    <%= render :partial=>"comments/comment", :object=>comment %> 
<% end %> 

#views/comments/_comment.html.erb 

<%= comment.body %> 

और इसकी में काम कर रहे के साथ करने की कोशिश की है एनजी :)

+0

हालांकि लिंक http://apidock.com/rails/ActionController/Base/render को बहिष्कृत किया गया है, यह प्रस्तुत करने के कुछ अच्छे उदाहरण प्रदान करता है। – Samiron

+0

आंशिक उपयोग करने वाला पृष्ठ पार्टियों_कंट्रोलर के माध्यम से प्रस्तुत नहीं किया जाता है - यह समस्या क्यों है? (नियंत्रक के लिए कोड अभी भी @parties = Party.all का उपयोग कर डेटाबेस से सभी पार्टियों को प्राप्त करता है) – nicohvi

+0

Ive ने एक और उदाहरण के साथ अपनी पोस्ट अपडेट की। यहां छोटे रेल परियोजनाएं हैं जो उदाहरण दे रही हैं। ** http: //goo.gl/bB9Ky**। आप स्वयं को क्रिया में डाउनलोड और देख सकते हैं :) – Samiron