【问题标题】:Reload/refresh a page in JSON以 JSON 格式重新加载/刷新页面
【发布时间】:2012-05-18 14:49:57
【问题描述】:

我正在将网站转换为移动应用程序,为此我需要以 JSON 格式获取输出。一切正常,但问题是当我添加/编辑它并在表中实际更新但在 JSON 输出中显示旧值时。

例如

    result = App::Web::AddAddress.create_edit(
    :controller => self,
    :client => @client,
    :data => @request_data,
    :language => 'en',
    :create => 1
  )
  if result.success == true
    return view_address_list
  end
   rescue
  return fail_request

我的问题是,如果它成功返回到 view_address_list 旧值(即使它更新数据库中的值)。如果我再次运行 view_address_list,它会显示更新的值,我确定我需要刷新/重新加载该方法。 view_address_list 方法返回成功时有什么方法可以重新加载/刷新?

【问题讨论】:

    标签: javascript ruby-on-rails json mobile


    【解决方案1】:

    我认为,一旦您开始着手开发您的移动应用程序,您的大部分请求将使用 AJAX 发送,您将收到 JSON 响应,您可以在您的应用程序中解析和使用这些响应。只要您不缓存此响应,您就会在每个响应中收到新值。如果您使用 jQuery Mobile(一种流行的选择),则尤其如此,它主要基于 AJAX 请求。

    处理您的回复的快速(虚假)方式

    //...
    success: function(data) {
      $.each(data, function(i, address) {
        address.content.appendTo('#list');
      });
    },
    //...
    

    【讨论】:

    • 感谢您的信息,问题是我不处理前端,只处理后端,前端人员希望每个输出都为 JSON。我不确定他们是否使用 jQuery mobile。非常感谢您的帮助。有什么办法可以在控制器本身中重新加载它?
    • @jens 并非无法访问前端,不。前端人员应该知道如何处理 AJAX 请求/响应场景。如果没有,请找另一个前端人员 :-) 总之,这部分不是你的责任
    • 感谢您的回答和您的时间。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-29
    • 2012-03-06
    相关资源
    最近更新 更多