使用Rails 4.我打電話給一個API,它將返回Shop和照片。當它返回照片時,最多可以顯示10張照片。保留10條記錄在Rails中創建/更新
每次我打電話給API,它都會find_or_initialize_by
一個店鋪,這樣我總是更新店鋪的詳細信息。同時,我也想更新照片。無法知道這些照片是相同還是不同,甚至不是來自網址。不同的照片網址可能與以前創建的照片相同。沒有參考ID,我也沒有在我的服務器上保存/下載照片。
我有以下代碼:
@shop = Shop.find_or_initialize_by(source_id: shop_params[:id])
@shop.photos.build(shop_params[:photos])
問題
比方說,當我第一次創造店A,用4張照片的API返回。我保存所有4張照片。我再次爲商店A調用API,API返回10張照片。我想保存這10張照片。我不介意前面的4個是否被破壞或更新。我如何完成這項工作?保存後總的照片應該是10張。
然後,我可以再次調用API,它返回6張照片。現在我不想保留前面的10張照片,但只是6張照片。
在我看來,我會打電話@shop.photos
,這實質上是最新的照片(最多10張)。
注意 API返回的照片可能與我已經在我的數據庫中已經有的照片重複。這就是爲什麼我無法保留以前的照片。
你能澄清這一點? 「沒有參考ID,我也沒有將照片保存在我的數據庫中」。你的數據庫中的照片?你想把它們保存到你的數據庫? – Swards
@Swards抱歉,我的意思是「我不在我的服務器上保存/下載照片」 – Victor