我有同样的问题,就像在这里问Routing problems with Codeigniter and Backbone.js - 那么,是否有一个现有的例子如何解决这个问题?如何以及在何处调整我的代码?我如何转储Codeigniters View部分,让Backbone像建议一样完成MV部分?
提前致谢...
[UPDATE]
因此,在查看Catch-all Controller/Route后,在我的application->config->routes.php
我必须添加:
$route['(:any)'] = 'catchall_controller'
另外是$route['default_controller'] = "main"
还是代替?
然后在我的主控制器中我必须这样做或什么?:
class Main extends CI_Controller {
public function index()
{
$this->uri->segment(n);
$this->load->view('home');
}
}
最后删除我的Backbone App中的pushState:true
,然后说:
Backbone.history.start({root: App.ROOT });
这是正确的吗?
答案 0 :(得分:0)
您的问题来自您使用pushState的事实。从文档(http://backbonejs.org/#History):
请注意,使用真实网址需要您的网络服务器能够 正确呈现这些页面,因此需要进行后端更改 好。例如,如果您的路线为/ documents / 100,则表示您的网站 如果浏览器访问该URL,则服务器必须能够提供该页面 直接
所以你的选择基本上是:
Backbone.history.start({ root: App.ROOT });