刷新或直接URL上的Ember错误

时间:2016-06-25 13:36:40

标签: javascript ember.js model

我无法找到这个问题的当前答案。

我正在Ember中构建我的最新项目,虽然我可以直接访问不同的路径并在本地刷新,但一旦我为生产构建并托管网站,这就不再适用了。我相信我的路由器的slug部分是正确的,所以不确定我需要更新什么。

注意:我使用的是Ember CLI。

Router.js

const Router = Ember.Router.extend({
  location: config.locationType
});

Router.map(function() {
  this.route('reviews', function() {
    this.route('index', {path: '/'});
    this.route('review', {path: '/:review_id'});
  });
  this.route('movies');
  this.route('about');
  this.route("error", { path: "*path"});
});

审核模式

export default Ember.Route.extend({
    model(params) {
        const id = parseInt(params.review_id);
        const movies = this.get('movies');
        return movies.getMovieById(id);
    },
    movies: Ember.inject.service()
});

如果我尝试直接访问或刷新/about/reviews/movies/reviews/:review_id,我会获得404.即使约会路线没有'有一个模型来检索任何数据。它只是加载模板。我可以刷新的唯一途径是网站的索引页面。

1 个答案:

答案 0 :(得分:0)

我在这里找到了这个链接,指示如何更新你的htaccess文件以将请求重定向到Ember的索引文件。这看起来已经解决了我的问题: http://discuss.emberjs.com/t/apache-rewrite-rule-for-html5-browser-history-url-bookmarkability/1013