2014-12-17 2 views
0

Как я могу пропустить следующий код вывода из консоли? По сути, истории - это вложенный атрибут записи, и мне нужно передать «story.content» переменной сообщения, которая используется в шаблоне электронной почты.ActionMailer с помощью вложенных атрибутов в Rails

//output in firefox console from new.html.erb 
name="message[story_attributes][7][content]" 

    //new.html.erb This is the form 
    <% for story in @entry.stories %> 
    <%= fields_for "message[story_attributes][]", story do |ff| %> 
     <tr> 
     <th><%= ff.label(:content) %></th> 
     <td><%= ff.text_area(:content) %></td> 
     </tr> 
    <% end %> 
    <% end %> 

//internal_email.html.erb - ????? 
<% for ... in @message.story_attributes %> 
    ????? 
<% end %> 
+0

решить ее с помощью».collect (&: содержание) .join (» Story >>> ") .prepend (" История> >> «)», чтобы собрать все истории и отобразить их как пакет, а не отдельно. – snewcomer

ответ

0

Если приложение не отправляет электронное письмо, попробуйте изменить поставку для доставки!

также, убедитесь, что вы переинициализации значения в классе InternalEmail

class InternalEmail << ActionMailer::Base  
    def internal_email(message) 
    @message = message 
    mail(to: "", subject: "") 
    end 
end 
+0

Спасибо Dan. Электронная почта отправит, оставив историю. Просто пытаюсь выяснить, как передать эти вложенные атрибуты через ActionMailer. – snewcomer

+0

Система будет искать приложение/views/internal_email_mailer/internal_email.html.haml. Попробуйте что-то там положить. –

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