Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails rails 3-在页面加载时进行多个ajax调用,而不是进行单个调用_Ruby On Rails_Controller - Fatal编程技术网

Ruby on rails rails 3-在页面加载时进行多个ajax调用,而不是进行单个调用

Ruby on rails rails 3-在页面加载时进行多个ajax调用,而不是进行单个调用,ruby-on-rails,controller,Ruby On Rails,Controller,我有一个包含三个部分的页面:建议的项目、建议的人和一个帖子提要。当此页面上出现GET请求时,我有两个选项: 1在页面的控制器/操作中,我可以获取建议的项目、建议的人员和构成提要的帖子,然后立即显示包含所有数据的页面 2在页面的控制器/操作中,我做的不多。我可以在页面上使用ajax向建议项目的控制器/操作、建议人员的控制器/操作和帖子提要的控制器/操作发出三个独立请求,并让他们的js.erb文件用获取的内容填充页面 首先,选项2是否可能?如果是这样的话,它似乎更模块化,因为我可以将该逻辑重新用于其

我有一个包含三个部分的页面:建议的项目、建议的人和一个帖子提要。当此页面上出现GET请求时,我有两个选项:

1在页面的控制器/操作中,我可以获取建议的项目、建议的人员和构成提要的帖子,然后立即显示包含所有数据的页面

2在页面的控制器/操作中,我做的不多。我可以在页面上使用ajax向建议项目的控制器/操作、建议人员的控制器/操作和帖子提要的控制器/操作发出三个独立请求,并让他们的js.erb文件用获取的内容填充页面

首先,选项2是否可能?如果是这样的话,它似乎更模块化,因为我可以将该逻辑重新用于其他页面,这些页面也需要显示建议的项目、建议的人员等。。。这显然是以提出更多要求为代价的

推荐哪种方法?赞成/反对


谢谢。

好吧,任何一天我都会建议打一个电话,而不是三个单独的电话。正如您所提到的,您需要花费三个不同的请求的费用,同样的另一个原因是IE7的某些浏览器2对域的并发连接数量的限制。还要考虑您的Web服务器,以及随着用户数量的增加,它可以处理的最大请求数

另外,您仍然可以通过拥有所有三个操作来将其模块化,并且如果可能的话,您还可以拥有一个调用这三个操作并聚合结果的操作,因为我对Rails架构不太确定

希望这有帮助