0

s3に画像を保存するためにペーパークリップを使用していますが、フォームの場合と同じように、APIを介して画像を取得し、モデルに保存する必要があります。データベースには

  • pic_file_name
  • pic_content_type
  • pic_file_size
  • pic_updated_at

これらは存在するフィールドですが、画像をjsonとして送信し、そのフィールドの値を入力する方法です。私がこれをするのを手伝ってください。

4

1 に答える 1

0

私はあなたに私の仕事の例をあげます

コントローラ

デフォルト作成

@locationid = InformationSchema.count_by_sql("SELECT AUTO_INCREMENT FROM `information_schema`.`tables`
                                            WHERE (table_name = 'Location') LIMIT 1") 
  @location = Location.new
  @location.longitude = params[:longitude]
  @location.latitude = params[:latitude]
  @location.placemark = params[:address]
  @location.location_description = params[:locationDescription]
  @location.date = params[:dateTime]
  if params[:file]
    @location.file = params[:file]
    @location.photo_path = "/system/images/original/" +@locationid.to_s+".jpg?t=#{Time.now.to_i}"
  end
  @location.save

render json: {:result => @location}

終わり

モデル

まず、information_schema.rb という名前の新しいモデルを作成し、これを入力する必要があります。

class InformationSchema < ActiveRecord::Base
self.table_name = 'information_schema.tables'
end

そして、私の location.rb モデルで

クラス Location < ActiveRecord::Base

attr_accessible :date, :id, :latitude, :location_description, :longtitude, :photo_path, :placemark , :file
attr_accessor :file_file_name, :file_content_type
has_attached_file :file, :styles =>{:medium => "300x300", :small = > "100x100"}, :path => ":rails_root/public/system/images/:style/:id.jpg", :default_url => "/system/images/:style/:id.jpg" end

于 2012-12-03T02:10:08.253 に答える