2011-09-12 20 views
0

我的XML錯誤:Rails的XML未定義的方法'名稱」的 「預覽」:字符串

NoMethodError in Admin/xml#index 

Showing C:/Rails/asdw/app/views/admin/xml/index.rhtml where line #1 raised: 

undefined method `name' for "preview":String 

Extracted source (around line #1): 

1: <% update_xml("preview") %> 
2: 
3: 
4: <h2>Preview/publish</h2> 

我的控制器:

def index 
    @photographer = Photographer.find(:first) 
    #render :layout => false 
end 

我的XML幫手:

module XmlHelper 
     require 'builder' 

      def update_xml(photographer, output="preview") 

       xml = Builder::XmlMarkup.new 



       xml.photographer(:name => photographer.name) do  



        for group in photographer.groups 
        xml.group(:name => group.name) do 
        for project in group.projects 
         xml.project(:name => project.name) do 
            for collection in project.collections 
             xml.collection(:name => collection.name) do 
              for image in collection.images 
               xml.image(image.description, :url => image.image, :id => image.id) 


              end 
             end  
            end 
         end 
        end 
        end  
        end  
       end   


       File.open("#{rails_root}/public/xml/#{output}.xml", "w") do |f| 
        f.puts ("#{xml}") 
       end 


     end 






end 

UPDATE:

使用<% update_xml(photographer, "preview") %>

NameError in Admin/xml#index 

Showing C:/Rails/asdasd/app/views/admin/xml/index.rhtml where line #1 raised: 

undefined local variable or method `photographer' for #<#<Class:0x47eb990>:0x47ea238> 

新的更新使用<% update_xml(@photographer, "preview") %>

oMethodError in Admin/xml#index 

Showing C:/Rails/asdfsadf/app/views/admin/xml/index.rhtml where line #1 raised: 

undefined method `groups' for #<Photographer:0x45ca2d8> 

Extracted source (around line #1): 

1: <% update_xml(@photographer, "preview") %> 
2: 
3: <h2>Preview/publish</h2> 
+0

這是一些瘋狂的壓痕。我會考慮一直使用兩個或四個空格 - 讓人們更容易幫忙。 –

+0

您能否請您提供您的控制器代碼? –

+0

我已經包含了我的控制器代碼。 –

回答

2

能否請您嘗試使用「<%update_xml(攝影師, 」預覽「)% >「而不是<%update_xml(」preview「)%>在Admin/xml#index中,讓我知道你是否再次出現錯誤!

+0

是的,沒有傳入正確的參數。 –

+0

我已經嘗試過我在視圖中誤導了我的問題。 –

+0

我得到了一個新的錯誤更新:未定義的方法'組' –

0

確保在您的攝影師模型,你有一個groups協會,如:

has_many :groups 
相關問題