我有兩個模型:照片和產品。這些通過has_many關聯並嵌套在。繞過編輯方法的導軌
在我的產品控制器中的「創建」操作中,我將用戶上傳的所有未鏈接到產品的照片關聯起來。 (我這樣做是因爲照片是通過ajax添加的)。
現在在編輯頁面。我想添加照片。這將需要我將照片鏈接到產品。在創建操作之前,我已經這麼做了。但正如你在Rails中所知道的那樣,並沒有真正的編輯動作。正因爲如此,在我的產品控制器中無處可見,我加入了這兩者。
那麼,我該如何解決這個問題?
P.S.我不能加入兩人在照片控制器,你問之前
產品控制器
def new
Photo.where(:product_id => nil, :user_id => current_user).delete_all
@product = Product.new
@photo = Photo.new
end
def create
binding.pry
@product = current_user.products.create(params[:product])
if @product.save
Photo.where(:product_id => nil, :user_id => current_user).update_all(:product_id => @product.id)
render "show", notice: "Product created!"
else
render "new", error: "Error submitting product"
end
end
def edit
@product = Product.find(params[:id])
@photo = Photo.new
end
照片控制器
def create
@photo = Photo.new(params[:photo])
respond_to do |format|
@photo.user_id = current_user.id
if @photo.save
format.html {
render :json => [@photo.to_jq_image].to_json,
:content_type => 'text/html',
:layout => false
}
format.json { render json: {files: [@photo.to_jq_image]}, status: :created, location: @photo }
else
format.html { render action: "new" }
format.json { render json: @photo.errors, status: :unprocessable_entity }
end
end
end
你在說什麼,「沒有真正的編輯行動」? – sevenseacat
因爲編輯操作僅用於視圖。有沒有一種方法(我知道)像創建編輯 –
你的意思是更新? :/ – sevenseacat