【问题标题】:Kohana multi language websiteKohana 多语言网站
【发布时间】:2023-03-29 02:33:01
【问题描述】:

。我正在尝试使用 kohana v3 建立一个多语言网站,遵循本教程:http://kerkness.ca/wiki/doku.php?id=example_of_a_multi-language_website

路由到控制器或操作,即website/controller/action 似乎可以正常工作,因为 URL 已正确重定向到 website/lang/controller/action。

  • 但这不适用于 ajax 请求调用。我必须使用适当的语言手动编辑 url,才能成功检索数据。这也适用于 html 页面上的锚点。

  • 除了这个问题,溢出参数“id”也不起作用。它以“lang”变量作为参数。

我已经设置了我的默认路线,就像在教程中一样:

Route::set('default', '((<lang>)(/)(<controller>)(/<action>(/<id>)))', array('lang' => "({$langs_abr})",'id'=>'.+'))  ->defaults(array('lang' => $default_lang,'controller' => welcome', 'action' => 'index'));

非常感谢任何帮助!干杯

【问题讨论】:

    标签: kohana multilingual


    【解决方案1】:

    你是否在配置文件中设置了默认语言?

    请尝试以下路线:

    Route::set('default', '(<lang>/)(<controller>(/<action>(/<id>)))', array('lang' => "({$langs_abr})",'id'=>'.+'))
        ->defaults(array(
            'lang' => $default_lang,
            'controller' => 'welcome',
            'action' => 'index'));
    

    如果您想将当前语言添加到您输出的任何链接中,您可以尝试透明地扩展 URL 类,或者只是扩展 HTML 类(用于 anchor() 方法)。 当前语言应该在请求对象Request::$instance-&gt;param('lang')中可用。

    【讨论】:

      猜你喜欢
      • 2015-04-03
      • 1970-01-01
      • 2012-04-16
      • 2010-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多