我试图生成一个通知电子邮件给网站管理员时,有一个新的注册网站,我正在建设。
我在App\Mail\SignedUp.php有一个叫App\Mail\SignedUp.php的邮件类。
在照明/Foundation/Auth/RegistersUser文件中,我有以下内容:
namespace Illuminate\Foundation\Auth;
use App\Organization;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Auth\Events\Registered;
use App\Mail\SignedUp;
trait RegistersUsers
{
use RedirectsUsers;
/**
* Show the application registration form.
*
* @return \Illuminate\Http\Response
*/
public function showRegistrationForm()
{
$organizations = Organization::all();
return view('auth.register', compact('organizations'));
}
/**
* Handle a registration request for the application.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function register(Request $request)
{
$this->validator($request->all())->validate();
event(new Registered($user = $this->create($request->all())));
$this->guard()->login($user);
Mail::to('example@example.com')->send(new SignedUp($user));
return $this->registered($request, $user)
?: redirect($this->redirectPath());
}
当我注册一个新用户时,我会收到这样的消息:类‘照明\基金会\Auth\Mail’没有找到
如果我将use App\Mail\SignedUp;
更改为use App\Mail;
,错误仍然是:未找到类“照明\基金会\Auth\Mail”
Illuminate\Foundation\Auth\SignedUp‘use Mail;
给了我没有找到
use App\Mail\SignedUp;
给我类‘照明\基金会\Auth\Mail’找不到
完全不试图导入类,而是将我的语句更改为:\Mail::to('example@example.com')->send(new SignedUp($user));
,我得到了类‘\Mail::to('example@example.com')->send(new SignedUp($user));
\Auth\Auth\SignedUp’未找到
A不知道如何让它找到我的邮件类。
我只是在猜测和在黑暗中射击-有人能看到我做错了什么吗?
这是我的邮件类文件:
<?php
namespace App\Mail;
use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Queue\ShouldQueue;
class SignedUp extends Mailable
{
use Queueable, SerializesModels;
public $url = 'https://av-cuauhtemoc.org/users';
public $user;
/**
* Create a new message instance.
*
* @return void
*/
public function __construct()
{
//
}
/**
* Build the message.
*
* @return $this
*/
public function build()
{
return $this->from('example@example.com')->view('emails.new-registration');
}
}
发布于 2019-03-18 07:19:27
我终于无意中找到了答案。我还需要导入use Illuminate\Support\Facades\Mail;
类。
因此,这是可行的:
use App\Mail\Signedup;
use Illuminate\Support\Facades\Mail;
发布于 2019-03-18 07:05:54
首先,您不应该更改Illuminate/Foundation/Auth/RegistersUser
文件,而是必须在RegisterController
中覆盖此方法
use App\Mail\SignedUp;
use Illuminate\Auth\Events\Registered;
use Illuminate\Http\Request;
use Mail;
public function register(Request $request)
{
$this->validator($request->all())->validate();
event(new Registered($user = $this->create($request->all())));
$this->guard()->login($user);
Mail::to('example@example.com')->send(new SignedUp($user));
return $this->registered($request, $user)
?: redirect($this->redirectPath());
}
https://stackoverflow.com/questions/55215855
复制相似问题