Каков наилучший способ визуализации шаблона внутри модели Rails? - PullRequest
0 голосов
/ 30 марта 2020

Я хотел бы создать PDF-файл из модели, используя драгоценный камень креветок. Ниже мое решение, но оно вызывает ActionController::Base.new() изнутри модели.

В настоящее время работает приведенный ниже код. Есть ли предложение для лучшего способа сделать это? 1006 * это?

class Certificate < ApplicationRecord

  has_one_attached :pdf

  def self.generate_for(student)
    @user = student

    certificate = student.build_certificate()

    action_controller = ActionController::Base.new()  

    template_string = action_controller.render_to_string template: 'certificates/certificate'

    io = StringIO.new template_string

    certificate.pdf.attach(
      io: io,
      filename: "filename",
      content_type: 'application/pdf',
      identify: false
    )

    certificate.save
  end

end
...