php – 在浏览器中准备好DOM的语言翻译弹出窗口缺少:Laravel 5.2

我的控制器中有以下代码.
public function AllCountries() {
    $Countries = (new \App\DataAccess\CountryData())->GetAllCountries();
    app()->setLocale('fr');
    return view('Country.List')->with('Countries',$Countries->getData()->CountryList);
}

下列数据获取方法的定义如下.

public function GetAllCountries() {
    return response()->json(['CountryList' => \App\Models\CountryModel::all()]);
}

在英文文件中我有以下代码.

return [
    'CountryName' => "E Country"
];

在法语文件中我有以下代码.

return [
    'CountryName' => "F Country"
];

在查看文件中,我有以下代码.

{!! trans('CountriesList.CountryName') !!}

通常当我们访问不是我们浏览器中设置的默认语言的网站时,我们会看到在页面加载时翻译页面的通知.看下面的截图:

但是,我的网站没有发生这种情况.虽然我可以看到法语,但翻译通知不会弹出,我可以用英文翻译.为什么?

Chrome翻译不会更改您的模板变量,也不会告诉您的网站应该显示其他语言.它使用谷歌翻译来翻译(换句话说:它不会查找您的服务器上的英文语言文件,将“F国家”翻译成“E国家”,但会用谷歌翻译“F国家”).

要获取消息,您的网站必须包含法语单词.尝试使用实际的法语单词(或者是整个句子)替换您的语言文件中的“F Country”,或者只是将一些法语内容放在您的测试页上.

如果您没有收到消息,请检查您的Chrome设置(“当网页不在…时提供页面翻译”),或者如果您禁用了您的网站.

然后检查您的网站元数据是否包含< meta name =“google”value =“notranslate”&gt,它将禁用您的网站的邮件. 您的反式(…)可用于翻译您的网站:您可以通过按钮“我是法国人”设置本地语言(会话)变量,让用户更改它,使用浏览器语言设置或其他一些意义 – 但这与chrome翻译无关,尤其是在其他浏览器也. 更新,因为你问什么语言文件是: 解析文件时使用它们(例如,当您创建用户请求的页面时);它使您的代码(通常是语言独立)和内容可管理:添加或编辑语言,您不必更改编码文件和破坏某些东西的风险,您可以将app() – > setLocale更改为一点.但是这个解析是在内容到达用户之前完成的:所以基本上你要么将法语或英文中的特定句子发送给用户,而不是两者.

您当然可以使用app() – > setLocale与特定于用户(或“会话”)的变量.在用户可以调用的某些功能(例如某种形式的动作)中使用

Session::put('language','fr');

这将设置一个会话变量,您可以从现在开始使用此变量来设置用于解析文件(最终!)的语言,而不是固定值,但会话变量通过

app()->setLocale(Session::get('language',Config::get('app.locale')));

再次:您仍然以一种语言将您的内容发送给用户,但您或用户可以选择应该使用哪一种.在分析请求之前,总是需要设置活动语言(例如将其放在每个请求运行的中间件类中).

您可以通过浏览器语言设置,url设置会话变量(例如,根据进入mysite.com或fr.mysite.com或mysite.fr可以设置语言变量的值)以及其他404种可能性.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


laravel的dd函数不生效怎么办
看不懂laravel文档咋办
安装laravel框架出现command怎么办
Laravel开发API怎么使用事务
laravel怎么构建复杂查询条件
laravel如何实现防止被下载
为什么laravel比yii火
一些常见的Laravel定时任务不运行的问题
laravel用路由有什么好处
composer无法安装laravel怎么办
laravel现在还用吗
laravel怎么替换主键id
laravel的appurl有什么用
如何修改Laravel的报错输出形式
laravel怎么避免foreach查表
laravel怎样操作数据库
laravel怎么截取字符串
laravel 是国内的吗
laravel怎么设置请求头
浅析Laravel社区Redis组件报错的问题和解决方法