我試圖從API調用更新所有市場數據。使用方法更新Rails中的關聯對象
我有一個包含許多市場的平臺。市場有高,低,最新價格等。
我無法遍歷關聯的集合並調用一個方法來更新。也許我的整個結構都不正確,我不確定。
我認爲使用market.update方法刷新API調用數據是有意義的。
class MarketsController < ApplicationController
def update
@platform = Platform.find(params[:platform_id])
@market = @platform.markets.find(params[:id])
@market.api_get_market_summary
@market.save
redirect_to @market.platform
end
其中在平臺視圖
<% @platform.markets.each do |market| %>
<%= market.market_name %>
<%= market.high %>
<%= market.low %>
<%= link_to 'Update', [market.platform, market],
:method => :put %>
<% end %>
我試過在平臺控制器每個組合工作正常,但我不知道我應該怎麼做,以更新平臺的所有市場。
class PlatformsController < ApplicationController
def update
@platform = Platform.find(params[:id])
@platform.markets.each do |market|
market.update(:id => market.id) # this obviously doesn't work
end
redirect_to @platform
end
我應該用update_attributes函數更新這裏的所有屬性嗎?
當創建對象時,我會調用市場API更新,以便數據在此處被初始化,這非常棒。
我應該怎麼辦?
另一部分,如果我添加了另一個平臺,我將如何處理這個人使用的不同API請求?
該回調適合罰款。謝謝。我使用Platform控制器的更新方法遍歷每個市場並更改觸發包含API調用的回調函數的屬性。 –