Laravel的翻译管理器,使用TALL栈构建。

0.3.1 2022-10-11 10:23 UTC

This package is auto-updated.

Last update: 2024-09-15 10:06:33 UTC


README

Lingua Banner

👅 Lingua

Laravel的翻译管理器,使用TALL栈构建。

🇮🇹 从意大利语:Lingua既指舌头也指语言

Latest Version on Packagist GitHub Tests Action StatusTotal Downloads Total Downloads

Lingua是一个仪表盘,允许您创建、管理和导入项目的翻译。

此包处于预发布状态,存在已知问题。请报告它们。

The new Release - 0.3 - bring a lot of changes, mainly in the interface. Screenshots here still outdated.

我要衷心感谢Spatie和Freek,他们教我如何开发包。

要求

  1. 安装AlpineJS并将其包含在您的JS文件中。
  2. 安装Livewire.
  3. 然后您可以通过composer安装此包。

安装

composer require alessandrobelli/lingua

此包需要在用户表上有一个名为linguaprojects的列,以及一个名为translations的表。

您可以使用以下命令发布和运行迁移:

php artisan vendor:publish --provider="alessandrobelli\Lingua\LinguaServiceProvider" --tag="migrations"
php artisan migrate

使用

您需要将路由添加到您的web.php文件中。

Route::lingua('desiredslug');

然后您可以去/desiredslug查看仪表盘。

Lingua_Dashboard

要使用JavaScript文件的翻译文件,请将以下内容放入您的header中

    <script>
        window.trans = [];
        window.trans = <?php
        if(File::exists(resource_path() . "/lang/" . App::getLocale() . '.json'))
        {
            $json_file = File::get(resource_path() . "/lang/" . App::getLocale() . '.json');
            echo json_decode(json_encode($json_file, true));
        }
        else{
            echo "[]";
        }
        ?>;
    </script>

然后,在JavaScript中创建一个原型函数来检测您的JavaScript文件中的trans()函数,或者如果您使用Vuejs和Lodash,则可以使用这个

Vue.prototype.trans = (key) => {
    if (_.isUndefined(window.trans[key])) {
        return key;
    } else {
        if (window.trans[key] === "") return key;
        return window.trans[key];
    }
};

显示的语言将根据浏览器的区域设置,或者您可以使用这篇教程

更多

更新日志

请参阅更新日志以获取有关最近更改的更多信息。

贡献

请参阅贡献以获取详细信息。

安全

如果您发现任何与安全相关的问题,请通过电子邮件info@alessandrobelli.it联系,而不是使用问题跟踪器。

致谢

许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证文件