2010-09-20 16 views
9

Utknąłem z zadaniem rake, które musi przygotować biuletyn dla Mailchimp.Szyny 3> Renderowanie widoków w zadaniu rake

pomocą szyn 2.x rzeczy google teraz mam ten kod:

desc "Sends newsletter to Mailchimp list" 
    task :send_newsletter => :environment do 
    begin 
     # get render helpers 
     av = ActionView::Base.new(Rails::Application::Configuration.new(Rails.root).view_path) 
     av.class_eval do 
     include ApplicationHelper 
     end 

     things = Stuff.do.things 

     h = Hominid::Base.new({:api_key => "xxx"}) 
     h.create_campaign(
     { 
      :list_id => "xxx", 
      :subject => "Hey...", 
      :from_email => "xxx", 
      :from_name => "xxx", 
      :to_email => "", 
      :auto_footer => true, 
      :generate_text => true 
     }, 
     { 
      :html => av.render(:template => "stuff/newsletter", :locals => {:things => things}, :layout => false) 
     }, 
     "regular") 
    rescue Exception => e 
     STDERR.puts ">>> #{e.to_yaml}" 
    end 

I ten komunikat o błędzie: "metoda niezdefiniowany` virtual_path”za fałszywe: FalseClass"

Moja pierwsza próba była z render_to_string, ale ja po prostu nie mogę uzyskać dostępu, ponieważ jest on w kontrolerze, a nie widoku.

Każda pomoc będzie bardzo mile widziane :)

Odpowiedz

12

:layout => nil?

+0

Ok ... Dzięki, poniedziałkowa pomyłka! – jbfeldis

+0

Dziękuję - to było bardzo pomocne. – Jurgen

Powiązane problemy