Rails コントローラー内にいて、ブロック内のインスタンス変数にアクセスしようとしています。これにより、「Nil のメソッド field1 がありません」というエラーが表示されます。
Prawn::Document.generate("hello.pdf") do
@model.field1
end
ただし、これを行うと、次のように機能します。
my_model = @model
Prawn::Document.generate("hello.pdf") do
my_model.field1
end
これは、ブロック内の ActiveRecord アクセサーまたはインスタンス変数と関係がありますか?