3

在我的 rails 应用程序中,我有两个用于不同操作的布局/控制器。

本质上,我将根目录/与 gateway#index 以及其他一些页面(例如/login/register

登录后的实际应用程序有自己的 URL 集,例如/dashboard /dashboard/action /explore等。

由于 IE 的 pushstate,url 更改为/#dashboard并加载网关页面的布局/JS。

我的 root 的 rails 控制器有以下代码,这会导致所有版本的 IE 中的无限循环

if @current_user
  redirect_to '/dashboard/lists'
end

以下是 Backbone 历史初始化程序(coffeescript):

Backbone.history.start 
  pushState: true
  root: '/dashboard/'

即使使用此设置,应用程序也会呈现网关布局/JS 而不是应用程序,并保持错误的 URL 相同(不将根设置为 /dashboard)。

我怎样才能让 IE 加载应用程序布局/JS/CSS,同时仍然有不同的根布局?

4

2 回答 2

3

我将根设置为无效路由。我最终做了以下事情:

Backbone.history.start 
  pushState: true
  root: '/app/'

并创建到使用应用程序模板的控制器的路由。

于 2012-08-28T23:03:49.990 回答
1

从骨干网站:

对于 RESTful 持久性,通过 Backbone.Router 支持历史记录和通过 Backbone.View 进行 DOM 操作,包括 json2.js 和任一 jQuery。

那么你包括了json2.js吗?

于 2012-09-10T12:34:56.193 回答