Ruby on Railsでunknown format.pdfと怒られる

相変わらずwicked_pdfでハマってます。

某サイトで参考に載っていた書き方でコントローラーを書きました。

  
  def pdf
    respond_to do |format|
     # format.html { redirect_to some_path(format: :pdf, debug: 1)}
      format.pdf do
        render pdf: 'pdf',
               encoding: 'UTF-8',
               layout: 'pdf.html.erb',          
               show_as_html: params[:debug].present?
               
      end
    end
  end

pdf.pdfでアクセスするとpdf
pdf?debug=1でアクセスすると、デバッグ用のhtmlが表示させたかったのですが、何故かリダイレクトループ。。。
format.htmlを消してみるとunknown format.pdfと怒られる。

結論的には、リンク元のヘルパーがまずかったです。
<%= link_to "PDFで出力する", some_path(idとか, {:format => :pdf}) %>
と明示的にformatをpdfにする必要があったみたいです。

ということで、wicked_pdfが無事動きましたよっと


ご質問などはTwitter

Facebook コメント

コメントを残す

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>