bramalho / laravel-translations
Laravel 翻译包
v1.0.1
2019-02-16 10:05 UTC
Requires
- php: >=7.1.3
- laravel/framework: ^5.5
This package is auto-updated.
Last update: 2024-09-16 21:55:24 UTC
README
Laravel Translations 是一个 Laravel 包,为您的模型提供翻译功能。
安装
安装包
composer require bramalho/laravel-translations
在 app/config/app.php 中添加服务提供者
BRamalho\LaravelTranslations\LaravelTranslationsServiceProvider::class,
发布配置
php artisan vendor:publish --provider 'BRamalho\LaravelTranslations\LaravelTranslationsServiceProvider'
运行迁移
php artisan migrate
使用方法
将特质添加到您的模型中
<?php namespace App; use Illuminate\Database\Eloquent\Model; use BRamalho\LaravelTranslations\Translate; class Page extends Model { use Translate; protected $fillable = ['title', 'body']; }
根据您的模型,将数据添加到新表 translations
<?php use Illuminate\Database\Seeder; use App\Page; use BRamalho\LaravelTranslations\Translation; class PageTableSeeder extends Seeder { public function run() { Page::create([ 'id' => 1, 'title' => 'Hello World!', 'body' => 'This is my page' ]); Translation::create([ 'id' => 1, 'translation_id' => 1, 'translation_type' => App\Page::class, 'language' => 'pt', 'content' => [ 'title' => 'Olá Mundo!', 'body' => 'Esta é a minha página' ] ]); } }
然后您可以简单使用它,如下所示
<h1>{{ $page->translation->content['title'] ?? $page->title }}</h1> <p>{!! $page->translation->content['body'] ?? $page->body !!}</p>
许可证
Laravel Translations 是开源软件,许可协议为 MIT 许可协议。