2012-01-13 4 views
0

Я хочу создать информацию на свою почту после заполнения пользователем пробелов. Но я не могу отправить атрибуты модели пользователя на мой почтовый адрес в формате HTML.Rails 3 ActionMailer Атрибут модели

class DemandMailer < ActionMailer::Base 
    default from: "[email protected]" 

    def demand_call(demand) 
     mail(:to => "[email protected]" , :subject => "user registered") 
    end 
end 

и demand_call.html.erb, как этот

the user name is <%= @demand.name %> 

но ошибка

ActionView::Template::Error (undefined method `name' for nil:NilClass): 

как я могу решить эту проблему?

ответ

0

Вы должны определить переменную экземпляра внутри метода

class DemandMailer < ActionMailer::Base 
    default from: "[email protected]" 

    def demand_call(demand) 
     @demand = demand 
     mail(:to => "[email protected]" , :subject => "user registered") 
    end 
    end 

, чем может использовать его в целях

the user name is <%= @demand.name %> 
+0

Спасибо :) Ваш совет работает. – ndrx42

Смежные вопросы