控制器上的一个系统希望发送数据到控制器的另一系统
问题描述:
我有一个系统上滑轨应用程序红宝石上(与IPADDRESS IP_A)和另一系统上运行的相同的代码(与IPADDRESS IP_B)控制器上的一个系统希望发送数据到控制器的另一系统
因此,都有一个模型叫做Grid
我想用ip_b Grid
模型的信息更新ip_a的Grid
模型。
我该如何做到这一点?
我已经尝试使用建立ActiveRecord连接直接更新Grid
模型。 我想知道如果我可以发送一个对象从ip_a的控制器通过邮政ip_b控制器。
任何人都知道如何去关于这个 ?
答
我不确定这是最佳解决方案,但您可以使用JSON。 因此,例如:
grids_controller.rb
def sync
grid = Grid.find(params[:id])
if grid
client = HTTPClient.new
json_params = client.get_content("http://your_ip_b_url/grid/#{params[:id]}.json")
grid.update_attributes(ActiveSupport::JSON.decode(json_params))
end
respond_to do |f|
f.js #in sync.js.erb you just modifying your index.html.erb to show that action is completed
end
end
def show
grid = Grid.find(params[:id])
respond_to do |f|
f.json { render :json => grid}
end
end
,并在您index.html.erb您只需创建一个链接同步在@grids房源的作用,这可能是遥控器。
当然,你需要重构,可能会改变一些东西,但我认为这是一个开始。