繁体   English   中英

获取用户的电子邮件-Laravel 5 PHP

[英]Getting users' email - Laravel 5 PHP

我正在尝试存储将文件上传到“ uploader_name”字符串变量中的所有用户的电子邮件地址。 我尝试使用以下代码成功完成-尝试上传文件将导致找不到类'App \\ Http \\ Controllers \\ Auth'的错误消息。 我知道这是一个非常基本的问题,但是我似乎找不到任何特别适用于Laravel 5的答案。

这就是我目前试图使用的,但没有成功。

$filelist->uploader_name = Auth::user()->email;

如果有帮助,这里是完整功能,可保存文件的某些自动信息。

public function store()
{
    $filelist = new Filelist($this->request->all());
    //store file details - thanks to Jason Day on the unit forum for helping with some of this
    $filelist->name = $this->request->file('asset')->getClientOriginalName();
    $filelist->file_type = $this->request->file('asset')->getClientOriginalExtension();
    $filelist->file_size = filesize($this->request->file('asset'));
    $filelist->uploader_name = Auth::user()->email;
    $filelist->save();
    // Save uploaded file
    if ($this->request->hasFile('asset') && $this->request->file('asset')->isValid()) {
        $destinationPath = public_path() . '/assets/';
        $fileName = $filelist->id . '.' . $this->request->file('asset')->guessClientExtension();
        $this->request->file('asset')->move($destinationPath, $fileName);

    }



    return redirect('filelists');
}

找不到错误,因为您没有使用正确的名称空间。

如果使用如下所示的use关键字,则可以解决此问题:

use Auth;

public uploadController {
...
}

或者,您可以使用完整的名称空间:

$filelist->uploader_name = \Auth::user()->email;

由于未使用正确的名称空间,因此出现“ App \\ Http \\ Controllers \\ Auth”类未找到错误:

有两种解决方法:

通过在控制器中包含use关键字

例:

use Auth;

UploadController{
     ....
}

或直接指定完整的名称空间

$filelist->uploader_name = \Auth::user()->email;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM