Laravel 5.4:此集合实例上不存在Property [id]

时间:2018-03-25 17:56:02

标签: laravel laravel-5.4

我在laravel 5.4中保存图像或文件上载时遇到问题。     管理员是唯一一个允许在注册用户时将用户与他/她的图像一起注册的用户应该在他的收件箱中收到确认电子邮件。对于我认为与此控制器相关的其他相关代码以及可能弄乱我的代码的电子邮件功能或方法。 粘贴箱https://pastebin.com/h3Sj7sGN

   //UserController
   <?php

   namespace App\Http\Controllers;

   use App\User;
   use Illuminate\Http\Request;
   use Illuminate\Support\Str;
   use Mail;
   use App\Mail\verifyEmail;


   class UserController extends Controller
   {
   /**
    * Display a listing of the resource.
   *
   * @return \Illuminate\Http\Response
   */
   public function index()
   {
    $users = User::all();

    //Load all users on the table and pass the users
    $users = User::where(['archive'=>1])->orderBy('id')->get();
    return view('usercrud.index')->with('users', $users);      
    }




    public function create(Request $request)
    {
    //
    if ($request->file('images') == null)
    {
       $file = "";
    }else{

    $filename = $request->images->getClientOriginalName();

    $filesize = $request->images->getClientSize();

    $file = $request->file('images')->storeAs('images', $filename);

    $usersSt = new User;
    $usersSt->filename = $filename;
    $usersSt->filesize = $filesize;
    $usersSt->position = $request->companyPos;
    $usersSt->empid = $request->empid;
    $usersSt->name = $request->fullname;
    $usersSt->email = $request->email;
    $usersSt->password = bcrypt($request->password);
    $usersSt->roles = $request->role_id;
    $usersSt->save();
     }

     $users = User::all();
     $users = User::where(['archive'=>1])->orderBy('id')->get();
     $thisUser = User::findOrFail($users->id);
    $this->sendEmail($thisUser);

    $thisUser = User::findOrFail($users->id);
    dd($id);
    $this->sendEmail($thisUser);
    return redirect()->to('userIndex')->with('users', $users);
    return $request->all();


    }    

    public function verifyEmailFirst(Request $request)
    {
    //
    return view('usercrud.verifyEmailFirst');
    }

    /*  public function emailtoken(Request $request)
    {
        //
        return 

    }  */      

    /**


   public function edit($id)
   {
    //
    $users = User::where(['id'=>$id])->first();


    // dd($users);

     return view('usercrud.edit',compact('users'));
    }


    public function update(Request $request, $id)
     {
     //
    $usersUp = new User;
    $password = bcrypt($request->editpassword);


    // dd($request->editcompanyPos);

    $usersUp = User::where('id',$id)
        ->update(['position'=>$request->editcompanyPos,'name'=>$request- 
         >editfullname,'email'=>$request- 
         >editemail,'password'=>$password,'roles'=>$request->editrole_id]);

      $users = User::all();
     $users = User::where(['archive'=>1])->orderBy('id')->get();

     return redirect()->to('userIndex')->with('users', $users);
    }


    public function destroy($id)
    {
    $userDel = User::where('id',$id)->update(['archive'=>0]);

    $users = User::all();
    $users = User::where(['archive'=>1])->orderBy('id')->get();

    return redirect()->to('userIndex')->with('users', $users);

    }

    public function sendEmail($thisUser)
     {
    Mail::to($thisUser['email'])->send(new verifyEmail($thisUser));
     }

     public function sendEmailDone($email, $verifyToken)
    {
    $user = User::where(['email'=>$email, 'verifyToken'=>$verifyToken])- 
     >first();
    //return $user;
    if ($user){
        return user::where(['email'=>$email, 'verifyToken'=>$verifyToken])- 
        >update(['status'=>'1','verifyToken'=>NULL]);

    }else{
        return 'user not found';
    }

    }



    }

1 个答案:

答案 0 :(得分:0)

这样做

public function create(Request $request)
{
//
if ($request->file('images') == null)
{
   $file = "";
}else{

$filename = $request->images->getClientOriginalName();

$filesize = $request->images->getClientSize();

$file = $request->file('images')->storeAs('images', $filename);

$usersSt = new User;
$usersSt->filename = $filename;
$usersSt->filesize = $filesize;
$usersSt->position = $request->companyPos;
$usersSt->empid = $request->empid;
$usersSt->name = $request->fullname;
$usersSt->email = $request->email;
$usersSt->password = bcrypt($request->password);
$usersSt->roles = $request->role_id;
$usersSt->save();
 }


$this->sendEmail($usersSt);

return redirect()->to('userIndex')->with('users', $usersSt);
}