使用数据库

时间:2018-01-25 22:07:54

标签: php laravel localization

我正在使用Voyager 1.0。我有一个博客项目。我有一个问题,因为我不知道如何翻译路线。

例如

   Route::get('projects/{slug}','Admin\ProjectController@project');

我知道如何翻译slu ,,但我不知道如何翻译项目'不使用文件。我不想使用文件,因为这是一个技巧..管理员可以添加他想要的语言数量,并且我试图避免创建文件......这样做为什么我整个网站的所有文本都在数据库中。

1 个答案:

答案 0 :(得分:0)

对翻译的路线使用laravel-localization(https://github.com/mcamara/laravel-localization/blob/master/README.md#translated-routes)包。

在所有静态转换路由之后,您必须在路由文件底部定义动态转换路由。

如果你想要翻译所有的slug,你可以定义像Page这样的主要内容模型,这个模型可能有父模型和子页面模型,或者你可以为slugs创建表格,保存所有不同类型的内容(Polymorphic relationship)slugs with language代码独特的完整性并提供父子关系。

在网站中提供多语言slug后,您可以查询这个slugs表或主要内容表。

您的动态路线仅包含以下参数:

   {slug}/{slug_2?}/{slug_3?}