「エントリ」と呼ばれる ActiveRecord::Base モデルがあります。それにファイルが添付されています。Paperclip を使用してファイルをアップロードしています。ビューを使用し、ビューでサーバー側のコードを使用すると、すべてが楽しくなります。しかし今は、JSON と AJAX を使用して、フロント エンドを純粋な HTML5 でレンダリングしたいと考えています。そのためには、ファイルの URL が必要です。しかし、ペーパークリップはファイル名、ファイルのコンテンツタイプなどを保存するだけで、ファイルのURLを取得できます。
url = @post.myFile.url
したがって、URLをDBに個別に保存したくありませんが、「Post」モデルの属性にしたいので、設定して取得し、送信されるJSONの一部にする必要がありますクライアント側に。
私のコントローラーには、「index」メソッドがあります。
def index
@posts = Post.order("created_at desc")
respond_to do |format|
format.html # index.html.erb
format.json { render json: @posts }
end
end
モデルを変更するにはどうすればよいですか? コントローラーを変更するにはどうすればよいですか? 使ってみた
attr_accessor :file_url
私のモデルで、コントローラーのインデックスメソッドに行を追加しました
@posts.each do |myPost|
myPost.file_url = myPost.myFile.url
end
しかし、成功できませんでした。どんな助けでも大歓迎です。ありがとうございました。