コントローラーを介してビューに渡したい画像が添付されたモデルがあります。これは私が自分で試した方法ですが、うまくいきません:
モデル:
class CustomForm < ActiveRecord:Base
has_attached_file :background_image,
:storage => :s3,
:bucket => "asdf",
...
belongs_to :project
コントローラ:
class FormsController < ApplicationController
before_filter :get_project
def show
@form = @project.forms.find(params[:id])
@bg_image = @form.background_image.url
end
def get_project
@project = current_account.projects.find(params[:project_id])
end
意見:
<html>
<head>
</head>
<body>
<%= image_tag @bg_image %>
</body>
</html>
これにより、「nil を文字列に変換できません」というエラーが発生し、「<%= image_tag @bg_image %>」行がポイントされ、@bg_image が nil であると想定されます。それで、私はここで何が間違っていますか?