如何更改Laravel默认电子邮件验证布局
答案 0 :(得分:2)
此验证电子邮件有多个部分,位于不同的位置。
可以在\vendor\laravel\framework\src\Illuminate\Auth\Notifications\VerifyEmail.php
处更改电子邮件的主题和消息。寻找这个功能
public function toMail($notifiable)
{
$verificationUrl = $this->verificationUrl($notifiable);
if (static::$toMailCallback) {
return call_user_func(static::$toMailCallback, $notifiable, $verificationUrl);
}
return (new MailMessage)
->subject(Lang::get('Verify Email Address'))
->line(Lang::get('Please click the button below to verify your email address.'))
->action(Lang::get('Verify Email Address'), $verificationUrl)
->line(Lang::get('If you did not create an account, no further action is required.'));
}
电子邮件模板位于vendor\laravel\framework\src\Illuminate\Notifications\resources\views\email.blade.php
视图和其他样式信息(包括CSS)可以在\vendor\laravel\framework\src\Illuminate\Mail\resources\views\
答案 1 :(得分:1)
您可以使用此artisan命令发布供应商电子邮件模板(电子邮件的布局):
php artisan vendor:publish --tag=laravel-mail
电子邮件模板的副本现在位于resources/views/vendor/mail
中,您可以对其进行自定义。
Laravel将使用这些已发布的模板,而不是Laravel框架供应商代码中的模板。
可以在此文件中直接更改验证电子邮件的内容:
resources/views/auth/verify.blade.php
参考文献:
答案 2 :(得分:0)
验证电子邮件的布局位于resources/views/auth/verify.blade.php
中。您可以直接在此处进行更改。
如果您要使用完全不同的视图进行验证,则可以覆盖show()
内部的VerificationController
方法。您需要做的就是将此方法添加到该控制器的顶部:
public function show(Request $request)
{
return $request->user()->hasVerifiedEmail()
? redirect($this->redirectPath())
: view('your.view');
}
答案 3 :(得分:0)
您可以通过运行此命令来发布视图文件
php artisan vendor:publish --tag=laravel-notifications
然后在resources/views/vendor/notification
有关自定义电子邮件模板的更多信息,请访问此链接 How to Customize the Templates
答案 4 :(得分:0)
您应该运行
class Dish(models.Model):
PIZZA = 'PIZZA'
SUB = 'SUB'
PASTASALAD = 'PASTASALAD'
PLATTER = 'PLATTER'
TYPE_CHOICES = ( (PIZZA, 'Pizza'), (SUB, 'Sub'), (PASTASALAD, 'PastaSalad'), (PLATTER, 'Platter') )
name = models.CharField(max_length=64, blank=True) # blank makes name optional
type = models.CharField(max_length=64, choices=TYPE_CHOICES, blank=True)
size = models.CharField(max_length=1, choices=SIZE_CHOICES, default=SMALL, blank=True)
price = models.DecimalField(max_digits=6, decimal_places=2, default=None)
class Meta:
abstract = True
def __str__(self):
return f"{self.name} {self.size} - Price: ${self.price}"
class Pizza(Dish):
dish = models.OneToOneField(Dish, on_delete=models.CASCADE, related_name="dish_id_pizza", parent_link=True)
REGULAR = 'REGULAR'
SICILIAN = 'SICILIAN'
STYLE_CHOICES = ( (REGULAR, 'Regular'), (SICILIAN, 'Sicilian'),)
style = models.CharField(max_length=7, choices=STYLE_CHOICES, default=REGULAR)
topping_count = models.IntegerField(default=0, validators=[MaxValueValidator(5), MinValueValidator(0)])
def __str__(self):
return f"{self.size} {self.style} pizza with {self.topping_count} toppings: ${self.price}"