无法在laravel模型中使用PHP特性
我使用mailgun PHP sdk发送邮件时有一个特点,当我尝试发送邮件时,会出现以下错误:无法在laravel模型中使用PHP特性,php,laravel,Php,Laravel,我使用mailgun PHP sdk发送邮件时有一个特点,当我尝试发送邮件时,会出现以下错误: Trait 'App\Models\sendMailgunSdkApi' not found 这是我的折扣模型,我使用sendDiscountMail1方法中的trait <?php namespace App\Models; use Illuminate\Database\Eloquent\Model; use App\Models\DiscountCode; use App\Mode
Trait 'App\Models\sendMailgunSdkApi' not found
这是我的折扣模型,我使用sendDiscountMail1方法中的trait
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use App\Models\DiscountCode;
use App\Models\Order;
use Carbon\Carbon;
use App\Models\Scopes\Discounts;
use Mailgun\Mailgun;
use App\Traits\SendMail;
class Discount extends Model
{
use Discounts, sendMailgunSdkApi;
public static function sendMail1($order)
{
$mailData =
[
'order' => $order
];
$mail = $this->sendMailgunSdkApi('emails.discounts.discount-mail-1', $mailData, 'Disfruta de tu nuevo descuento en '.config('app.name').'.', 'gabogabans@gmail.com');
return response()->json([
'mail' => $mail,
]);
}
}
为什么它要在我的模型文件夹中寻找一个特性
我的特点是以防万一:
<?php
namespace App\Traits;
trait SendMail
{
public function sendMailgunSdkApi($view, $mailData, $subject, $to)
{
$html = view($view, compact('mailData'))->render();
$result = app(Mailgun::class)->messages()->send(config('mail.mailgun.domain'), [
'from' => config('mail.from.name').' <'.config('mail.from.address').'>',
'to' => $to,
'subject' => $subject,
'html' => $html,
]);
return $result;
}
}
使用SendMail作为特征,然后调用sendMailgunSdkApi函数
use App\Traits\SendMail;
class Discount extends Model
{
use Discounts,SendMail;
public static function sendMail1($order)
{
$mailData =
[
'order' => $order
];
$mail = $this->sendMailgunSdkApi('emails.discounts.discount-mail-1', $mailData, 'Disfruta de tu nuevo descuento en '.config('app.name').'.', 'gabogabans@gmail.com');
return response()->json([
'mail' => $mail,
]);
}
}