iam mit Carierwave, um eine mehrteilige/Formulardaten zu buchen. dies mein Skript istCarierwave erhalten Null auf hochgeladenen Dateipfad
#imagepath model
class Imagepath < ActiveRecord::Base
belongs_to :imagepost
attr_accessor :path
mount_uploader :path, ImagepathUploader
end
#imagepost model
class Imagepost < ActiveRecord::Base
belongs_to :user
has_many :imagepaths
has_many :imagecomments
has_many :imagelikes
attr_accessor :imagepath_data
# attr_accessor :path
end
#imagepost controller post method
# POST /imageposts
def create
@imagepost = Imagepost.new(imagepost_params)
if @imagepost.save
params[:imagepost][:imagepath_data].each do |file|
@imagepost.imagepaths.create!(:path => file)
end
render json: @imagepost, status: :created, location: @imagepost
else
render json: @imagepost.errors, status: :unprocessable_entity
end
end
#imagepost_params for post_params
def imagepost_params
params.require(:imagepost).permit(:title, :description, :user_id, :imagepath_data => [])
end
iam mit curl die Daten
curl
-F "imagepost[imagepath_data][]=c4ewt.JPG"
-F "imagepost[imagepath_data][]=border-image.png"
-F "imagepost[title]=asasassasa"
-F "imagepost[description]=uhuhuhuhuhuhuh"
-F "imagepost[user_id]=5" localhost:3000/imageposts
Posting ist Arbeit zu schreiben, aber nach Post zu tun, erhalte ich Pfad Reihe von meiner imagepath Tabelle ist null :(
Dank jetzt seine gelöst. Ich fügte auch serialize hinzu: Avatare, JSON auf meinem imagepaths Modell und arbeitete jetzt. Ich verurteile SQLite – cahyowhy