Laravel 8 用户首选语言区域设置
有些情况下,应用程序存储每个用户的首选语言区域设置。通过在可通知模型上实现 HasLocalePreference
契约,可以指示 Laravel 在发送通知时使用用户保存的首选语言设置:
use Illuminate\Contracts\Translation\HasLocalePreference;
class User extends Model implements HasLocalePreference
{
/**
* 获取用户的首选语言区域设置
*
* @return string
*/
public function preferredLocale()
{
return $this->locale;
}
}
实现接口后,Laravel 将在向模型发送通知和邮件时自动使用首选区域设置。因此,使用此接口时不需要调用 locale
方法:
$user->notify(new InvoicePaid($invoice));