askdkc/breezejp

为Laravel Breeze(以及Laravel UI和Jetstream)提供标准验证和语言设置、时间戳等功能,瞬间实现日语化,并添加语言切换功能 / 本包为Laravel Breeze、Laravel UI和Jetstream包提供日语翻译,并具有语言切换功能。它还提供了日语验证消息

资助包维护!
askdkc
Ko Fi

v1.8.3 2024-05-21 22:58 UTC

README

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

Laravel 11也已支持(2024-01-26)

这是什么? TL;DR

只需以下两个命令即可自动将Laravel日语化👍

composer require askdkc/breezejp --dev

php artisan breezejp

备忘:使用Laravel Sail(Docker)进行开发的人,以下命令如下

./vendor/bin/sail composer require askdkc/breezejp --dev

./vendor/bin/sail artisan breezejp


另外,只需一个命令即可添加语言切换功能👍

php artisan breezejp --langswitch

备忘:Sail的情况下

./vendor/bin/sail artisan breezejp --langswitch

如果觉得方便,请支持一下

ko-fi

内容表

简介

这个包最初是为了将Laravel Breeze日语化而诞生的,但现在它已经支持Breeze、Jetstream和Laravel UI😁 此外,它还日语化了Laravel的各种验证消息,因此即使在没有安装Breeze等环境的情况下,也可以方便地使用😏

要确认基本功能,请在安装Laravel Breeze后安装此包(以下的使用说明都是基于此前提编写的)

在操作上,它会将翻译文件输出到Laravel的lang目录下,并自动将config内的语言设置改为日语🇯🇵

关于翻译:
如果需要修改翻译内容,请查看此README的日语自定义🙇‍♂️

使用方法

首先安装Laravel Breeze

composer require laravel/breeze --dev

php artisan breeze:install blade --dark

(如果不使用暗黑模式的话,可以这样执行,去掉末尾的 --dark选项)

php artisan breeze:install blade

php artisan migrate

然后安装此Breezejp包

请使用composer进行安装

composer require askdkc/breezejp --dev

以下命令将执行必要的语言文件输出

php artisan breezejp

输出内容:

Laravel Breeze用に日本語翻訳ファイルを準備します
config/app.phpのlocaleをjaにします

 GitHubリポジトリにスターの御協力をお願いします🙏 (yes/no) [yes]: 
 
 (ブラウザが開いてこのGitHubリポが開きます。スター頂けると励みになります)
 
 Thank you! / ありがとう💓
日本語ファイルのインストールが完了しました!

Laravel的语言设置和时区设置将自动进行

Breezejp在执行php artisan breezejp命令时,会自动将Laravel的配置文件config/app.php中的locale从en更改为ja👍

接着还将时区设置改为日本时区🕛

具体来说,在安装时会自动进行如下操作,所以不需要做任何特别的事情👀✨💓

---config/app.php:安装前---

'timezone' => 'UTC',

'locale' => 'en',

'faker_locale' => 'en_US',

php artisan breezejp 执行后

---config/app.php:安装后---

'timezone' => 'Asia/Tokyo',

'locale' => 'ja',

'faker_locale' => 'ja_JP',

操作确认

访问Laravel后,Breeze的所有菜单和验证消息都已日语化

启动Laravel

php artsan serve

https://:8000/ 访问

  • 用户注册页面

image

  • 登录页面

image

  • 各种警告消息也已日语化

image

  • Breeze发送的邮箱地址确认通知邮件的日语化以及

image

  • 密码重置通知邮件的日语化也得到解决

image

  • breeze v1.15新增的Profile页面的日语化也得到了支持

image


  • Breezejp v1.64开始支持分页的日语化

pagination

包的更新

在Laravel中添加新的验证规则时,如果能够跟踪信息,则此包也会更新

要应用新的翻译文件,请按照以下操作

composer update
php artisan breezejp

注意: 在进行“日语自定义”的章节时,由于Breezejp的新模板会覆盖语言文件,所以请勿执行此覆盖安装,而应进行个别修正

日语自定义

语言文件已输出到以下目录,因此可以自由修改文件内容以进行自定义

.
└─ lang
   ├── ja.json ← Breezeの各画面の日本語ファイル / メール通知の翻訳もこちら
   └─ ja
       ├── auth.php ← 認証画面の警告メッセージの日本語ファイル
       ├── pagination.php ← ページ送りの日本語ファイル
       ├── passwords.php ← 認証画面のパスワード関係の日本語ファイル
       └── validation.php ← 各種バリデーションの日本語ファイル

测试方法

composer test
composer analyse

邮件测试方法

Laravel Breeze(Laravel UI、以及Jetstream)会发送用户注册的邮箱地址确认邮件,以及用户自行重置密码的密码重置邮件

使用mailpit的方法

使用mailpit就可以轻松地进行上述邮件的日语化
(还有MAIL_MAILER=log这样的方法,但日语很容易在日志文件中变形🫠)

备忘: 2023/2/1 Laravel的.env的示例已从mailhog改为mailpit,请参见此处
mailpit是mailhog的功能增强版,但使用方法相同

  • Laravel的.env文件中已经写好了使用mailpit的示例,所以只需稍作修改即可
MAIL_MAILER=smtp
MAIL_HOST=localhost //ここをlocalhostに変えてね
MAIL_PORT=1025
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS="hello@example.com"
MAIL_FROM_NAME="${APP_NAME}"
  • 如果是macOS用户,我想您可能使用Homebrew,所以请使用brew安装mailpit(如果还没有安装的话)
brew tap axllent/apps
brew install mailpit

备忘:不是Mac的用户请参见这里


  • 启动mailpit
mailpit

备忘:(首次启动时可能会弹出“是否允许网络连接?”的提示,请允许)


  • 邮件发送测试

从Breeze的“登录” > “忘记密码?”链接输入注册时使用的邮箱地址,并发送密码重置链接

image

  • 访问mailpit确认界面

在浏览器中访问https://:8025

image

方便💓

使用mailhog的方法

在mailpit出现之前,Laravel中使用mailhog进行邮件测试的方法很常见
(mailpit是基于这个mailhog开发的,所以使用方法完全相同)

  • .env文件需要稍作修改
MAIL_MAILER=smtp
MAIL_HOST=localhost //ここをlocalhostに変えてね
MAIL_PORT=1025
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS="hello@example.com"
MAIL_FROM_NAME="${APP_NAME}"
  • 如果是macOS,我猜你使用的是Homebrew,所以可以用brew来安装mailhog(如果没有安装的话)
brew install mailhog

备忘:不是Mac的用户请参见这里


  • 启动mailhog
mailhog

备忘:(首次启动时可能会弹出“是否允许网络连接?”的提示,请允许)


  • 访问mailhog确认界面

在浏览器中访问https://:8025

image

哎呀,真方便💓

使用mailtrap的方法

在旧的Laravel版本中,Mailtrap已经在.env中提供了示例,所以也介绍一下使用Mailtrap的方法

  • 首先进行注册

访问Mailtrap进行注册(可以使用GitHub账号关联,这样比较方便) image

  • 创建邮箱箱,点击Sandbox中的Setup Inbox

image

  • 点击右上角的Add Project

image

  • 输入合适的Project Name(比如Laravel)然后点击Add

image

  • 点击Add Inbox创建收件箱

image

image

  • 点击创建的收件箱

image

  • 点击Integrations然后选择Laravel 7+

image

  • 将显示用于Laravel的.env的认证信息 (*以下信息已作废,仅供参考)

image

.env文件中的以下内容替换为Mailtrap的认证信息

MAIL_MAILER=smtp //mailtrapを貼り付け
MAIL_HOST=smtp.mailtrap.io //mailtrapを貼り付け
MAIL_PORT=2525  //mailtrapを貼り付け
MAIL_USERNAME=生成されたUSERNAME  //mailtrapを貼り付け
MAIL_PASSWORD=生成されたPASSWORD  //mailtrapを貼り付け
MAIL_ENCRYPTION=tls  //mailtrapを貼り付け
MAIL_FROM_ADDRESS="hello@example.com"
MAIL_FROM_NAME="${APP_NAME}"
  • 发送邮件后,邮件会显示在Mailtrap的收件箱内

image

哎呀哎呀,真方便💓

Laravel Lang与它有什么不同?

确实🦀,世界上确实存在https://laravel-lang.com这样的东西。。。
(如果事先知道存在就好了🤦‍♂️)

这个Breezejp包的优势目前有以下三点

  • 使用breezejp命令一键完成包括语言设置在内的日本化(省去了很多麻烦)
  • 这份日本语README的易读性(希望如此)
  • 修复了Breeze发送的邮件中多余的逗号👇部分(删除了所有让人不快的逗号💅)

image

另外,Breeze的功能和Laravel Lang几乎一样(只是简单地将语言文件创建到lang中),所以可以根据需要自由地自定义输出文件,请自由使用💓

附加信息

顺便说一句,Jetstream的日本化也可以做到🤫

jetstream

语言切换示例应用

既然已经支持日语,那么例如可以在英语和日语之间切换,应该比较方便吧?😁

为此,我创建了一个示例应用:Language Switcher Sample (语言切换示例),请参考使用💓

251501263-d807d110-971e-44c0-a284-9e1b57c73894

语言切换功能的安装

对于不想费事创建示例应用,只想立即使用语言切换功能的人来说,这里介绍一下如何安装语言切换功能🤗

php artisan breezejp --langswitch

之后,只需访问/language/{locale},即可切换语言,请发送相应的请求来使用

Laravel应用的启动

php artisan serve
  • 切换到日语的示例
http://127.0.0.1:8000/language/ja
  • 切换到英语的示例
http://127.0.0.1:8000/language/en

这样应该可以确认Laravel Breeze的各种菜单语言已经切换🤯

简单吧?😁

变更历史

关于最近的更改历史,请参考CHANGELOG

关于贡献

想要为这个包做出贡献的人,请参考CONTRIBUTING

关于安全和漏洞

请查看安全策略,并尽可能提供必要的信息,这将非常有帮助

贡献者

许可

MIT许可证(MIT)。请参阅许可文件获取更多信息。

对制作包感兴趣的人

这里有关于如何创建包的说明,请参考