Krakenjs路线与i18n网址

时间:2016-05-11 09:29:30

标签: node.js express kraken.js

我想在Kraken.JS中构建一个包含multilang内容的博客。 我应该如何构建控制器/模型/路由以获取这些URL:

/en-US/article/hello-world
/de-DE/article/hello-world
/it-IT/article/hello-world

slu((hello-world)不必国际化。 我不想在以下文件中复制控制器:

controllers/en-US/article/index.js
controllers/de-DE/article/index.js
controllers/it-IT/article/index.js

只用一个控制器文件,有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

是的,可以使用单个控制器完成:

查看此示例,了解有关如何完成此https://github.com/krakenjs/kraken-example-with-i18n#adding-a-hook-to-set-the-locale-on-the-fly

的说明

执行此操作的一种方法可能如下:

router.get('/:locale/article/:article_name', function (req, res) {
    res.cookie('locale', req.params.locale);
    res.redirect('/article/:article_name');
});

只有一个控制器: controller/article/index.js