У меня есть rails app (source), который выполняет планирование. Я пытаюсь повторно использовать template for shifts tables между видом смены и почтовым сообщением.Как повторно использовать шаблон Rails в ActionMailer
Я хотел бы удалить ссылки для почтового сообщения, но у меня возникли трудности с логикой. HAML У меня в настоящее время:
%table#shift-table
%tr
%th Start
⋮
%th Task
- if defined? params
%th.options
- @shifts.each do |shift|
%tr
%td= shift.start
⋮
%td= link_to_if(defined? params, shift.task.name, shift) if shift.task
- if defined? params
%td
= link_to 'Show', shift, class: [:btn, 'btn-default']
- if defined? can? and can? :update, shift
= link_to 'Edit', edit_shift_path(shift), class: [:btn, 'btn-default']
- if defined? can? and can? :destroy, shift
= link_to 'Delete', shift, :method => :delete, :data => { :confirm => 'Are you sure?' }, class: [:btn, 'btn-default']
defined? params
находится в почтовой программе true
, так что это не работает. Когда я пытаюсь params.nil?
или params[:controller]
, я получаю:
undefined method `params' for #<ScheduleMailer:0xae5e520>
Я должен упомянуть, что я посылаю электронную почту от rake task.