与ckeditor集成,不显示images-wicked-pdf

时间:2017-10-23 12:48:25

标签: ruby-on-rails pdf-generation paperclip rails-admin wicked-pdf

所以,我从ckeditor加载图像,当我渲染html时,它没有显示,没有出现错误,只是一个空方块,而不是图像,我试过raw,html_safe,但它没有解决,我放的文字正常显示,有没有人知道为什么会这样?

图片在

https://user-images.githubusercontent.com/26804018/31889194-ae1084e8-b7dd-11e7-85c7-1ba09d946269.png

在我看来:

<h6><b>1. Objetivo:</b></h6>
<p><%= raw @pop.objective %></p>

我的控制员:

def show
    # redirect_to :index_pdf
    # @pop = Pop.friendly.find(params[:id])
    @pop = Pop.find(params[:id])
   pdf = render pdf: @pop.title,
           :layout => false,
           template: "pops/index_pdf.html.erb",
           locals: {:pop => @pop},
           header: { 
                      right: 'Pág. [page] de [topage].' 
                    }
                    # send_file(pdf, :filename => @pop.title+'.pdf')
                    # baixar automaticamente
                    # precisa fazer 
  end

我的模特:

has_attached_file :image, styles: { medium: "300x300>" }, default_url: "/images/default.png"

1 个答案:

答案 0 :(得分:0)

我通过放置辅助方法解决了这个问题:

def with_abs_path(htmlstring)
   htmlstring.to_s.gsub(/(href|src)=(['"])\/([^\"']*|[^"']*)['"]/, '\1=\2' + 'address_of_server' + '\3\2')
end

并在我的pdf视图中调用:

<%= raw with_abs_path(@pop.objective) %>

视图是同一个节目:

<%= raw @pop.objective %>