繁体   English   中英

在Laravel中覆盖包本地化

[英]Override package localization in Laravel

它应该是“微不足道的”,但是在对#laravel irc频道进行一些讨论之后,我发现它现在可能是不可能的。 但是我会在这之前问这个丑陋的马,只是为了让项目完成。 如果通过当前方式确实不可能,我将在github上填写请求(在将项目交给我的客户之后)。

我正在使用Zizaco\\Confide来处理我的服务中的身份验证。 它使用Laravel Lang到处获取包的8种捆绑语言之一的字符串。 但我需要覆盖其中一些字符串,我不想修改包文件(这会破坏Composer的整个目的)。 我怎样才能做到这一点?

例如,我需要为pt_BR语言修改confide::confide.alerts.wrong_credentials 到目前为止我尝试了什么:

  • /app/lang/pt_BR/confide.php文件,内容return array('alerts' => array('wrong_credentials' => '...')) 它适用于Lang::get('confide.alerts.wrong_credentials')但不适用于命名空间Lang::get('confide::confide.alerts.wrong_credentials')
  • /app/lang/pt_BR/packages/zizaco/confide/confide.php带有return array('alerts' => ......) /app/lang/pt_BR/packages/zizaco/confide/confide.php return array('alerts' => ......)
  • /app/lang/pt_BR/packages/zizaco/confide/confide/alerts.php带有return array('wrong_credentials' => ...)
  • /app/lang/packages/zizaco/confide/pt_BR/confide.php with array('alerts' => array('wrong_credentials' => '...')) /app/lang/packages/zizaco/confide/pt_BR/confide.php array('alerts' => array('wrong_credentials' => '...')) - /app/lang/packages/zizaco/confide/pt_BR/confide/alerts.php带有return array('wrong_credentials' => ...) /app/lang/packages/zizaco/confide/pt_BR/confide/alerts.php return array('wrong_credentials' => ...)

关于我缺少什么的任何线索? 或者Laravel4真的缺少这个功能吗?

提前致谢!

实际上它固定在Laravel 4.1核心

你现在可以通过这样做来覆盖它

app/lang/packages/(locale)/confide/confide.php

检查一下

laravel 4语言问题

覆盖包语言的正确路径

所以,就目前而言,Laravel确实缺乏此功能。 我已经要求它在github上创建一个问题

同时,可以使用crynobone的Orchestra Platform 2 Translation Component 无缝地实现此功能,该组件可在此处找到

所有你需要做的就是require它在composer.json

{
    "require": {
        "orchestra/translation": "2.0.*"
    }
}

并替换/config/app.php的原始翻译包( 'Illuminate\\Translation\\TranslationServiceProvider'

'providers' => array(
    //'Illuminate\Translation\TranslationServiceProvider',
    // ...
    'Orchestra\Translation\TranslationServiceProvider',
),

而已! 现在,有了app/lang/en/packages/confide/confide.php就可以了! (请注意路径应该是/ packages / packagename /,而不是/ packages / vendor / packagename /

它真的让我免于头痛,希望其他人也觉得这很有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM