私は初心者レベルです。そして、私はイメージのURLを取得できません(私は方法を知らない)。 https://github.com/Atlantia/tinymce-rails-imageuploadRoR tinymce-rails-imageupload URLを取得
1.Controller
class TinymceAssetsController < ApplicationController
def create
DataFile.save(params[:file])
render json: {
image: {
url: view_context.image_url(image)
}
end
}
2.Model
class DataFile < ActiveRecord::Base
def self.save(file)
name = file.original_filename
#create the file path
path = File.join(directory, name)
#write the file
File.open(path, "wb") { |f| f.write(file.read) }
end
end
ファイルが保存されているが、私は、URL ...助けを 感謝を取得する方法がわかりません。
私はペーパークリップで行うことに決めました。しかし問題がある。
class DataFile < ActiveRecord::Base
has_attached_file :file, styles: { medium: "300x300>", thumb: "100x100>" }
end
class TinymceAssetsController < ApplicationController
def create
@datafile.update_attributes(file: params[:file])
render json: {
image: {
url: @datafile.file.url(:medium)
}
}
end
end
NoMethodError(nilのための未定義のメソッド `update_attributes':NilClass)
と別の質問: 私はスタイルを指摘しなかった場合、画像は元のサイズを持っているのだろうか?
非常にまれに使用する画像をアップロードします。 Dirクラスについては、実装するのが正しいのですか?ありがとうございました。 – user1309082
Paperclipは一般的なファイルのアップロードを処理します。ちょうどスタイルハッシュを渡さないでください。ファイルを保存してそれを取得します。 'Dir.entries(" mydirname ")'はディレクトリ内のファイル名のリストを提供しますので、本当に自分自身でやりたいのであれば、ユーザー用のすべてのファイルをサブディレクトリ( "uploads/#{self.id}/")、データベースに触れずにファイルのリストを検索する必要がある場合は、Dir.entriesを使用します。もう一度、適切なアップロード管理の宝石を使用してあなたを強調したいと思います! –
Joe、Paperclipを手伝ってもらえますか? NoMethodError(未定義メソッド 'update_attributes 'for nil:NilClass)。ありがとうございました。 – user1309082