2

私は、いくつかの Rails プロジェクトで Prawnto をかなり使用しました。このプロジェクトに統合しようとしているのですが、うまくいきません!

プラグインをインストールしました。ファイルはそこにあります。

script/plugin install git://github.com/thorny-sun/prawnto.git

config ブロックの environment.rb に次の行を追加しました。

config.gem "prawn"

エビはgemとしてインストールされ、設定されています:

gem list --local
prawn (0.5.1)
prawn-core (0.5.1)
prawn-format (0.2.1)
prawn-layout (0.2.1)

...とりわけ。

最後に、PDF を処理するコントローラー メソッドを設定しました。

def print
    @report = Report.find(params[:id])
    prawnto :filename => @report.name + ".pdf", :inline => false
end

結果?「テンプレートがありません」エラー。「print.erb」を探しています。「print.prawn.pdf」という名前のビュー ファイルがあり、同じ名前の他のビュー ファイルはありません。

私はこれに数時間を費やしましたが、まったく運がありませんでした。あなたが提供することができる任意のポインタをいただければ幸いです!

乾杯、アーロン。

4

3 に答える 3

1

これが更新です。Prawnto を呼び出すには 2 つの方法があるようです。上で述べたように、「prawnto」メソッド呼び出しを使用する方法と、respond_to ブロックを使用する方法です。

def print
  @report = Report.find(params[:id])
  respond_to do |format|
    format.pdf
  end
end

これで動作します。これはまだPrawntoを使用していますか?または、他の何か?この時点で私はただ手を上げています。

ありがとう、アーロン。

于 2010-02-16T13:57:20.260 に答える
0

「print.prawn.pdf」という名前のビューファイルがあります

そして、「 print.pdf.prawn 」という名前のビューファイルがあり、空のコントローラーメソッドで動作します。(私はレール2.3.8とあなたと同じエビの設定を使用しています)

于 2010-12-15T20:02:52.027 に答える
0

Prawntoは使ったことがないのですが、prawntoのメソッド呼び出しでテンプレートを指定してもらえますか?

prawnto :filename => @report.name + ".pdf", :inline => false, :template => "print.prawn.pdf"

それでも問題が解決しない場合は、代わりにWicked PDFをチェックすることをお勧めします。

于 2010-02-13T19:49:06.970 に答える