出现消息“Class'app \ Models \ User'not found”,但我在几个地方进行了研究,但没有一个解决方案有效。
composer.json:
"autoload": {
"classmap": [
"database","Models"
],
"psr-4": {
"App\\": "app/"
}
},
user.php的:
namespace App\Models;
class User extends Eloquent{
public function allUsers(){
return self::all();
}
}
UserController.php:
namespace App\Http\Controllers;
use App\Models\User;
use Illuminate\Http\Request;
class UserController extends Controller{
protected $user = null;
public function __construct(User $user){
$this->user = $user;
}
public function allUsers(){
return $this->user->allUsers();
}
public function getUser($id){
}
public function saveUser(){
}
public function updateUser($id){
}
public function deleteUser($id){
}
}
UserController备用(不工作)
namespace App\Http\Controllers;
use App\Models\User;
use Illuminate\Http\Request;
class UserController extends Controller{
public function __construct(){
}
public function allUsers(){
$class = '\app\Models\User';
return $class::allUsers();
}
public function getUser($id){
}
public function saveUser(){
}
public function updateUser($id){
}
public function deleteUser($id){
}
}
有人能帮我吗?
转到config/auth.php
并将App \ User:类更改为App \ Models \ User :: class。
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\Models\User::class,
],
还要更改User.php模型的命名空间
namespace App\Models;
你应该关心案件。
$class = '\app\Models\User';
不会工作但是
$class = '\App\Models\User';
可能会。
我有一次类似的问题。这是我如何解决它这是一个资源文件,我称之为类实例,
$this->user->name
在模型文件中,我称之为
User::class
即使命名空间显然是App \ Models
这不起作用,因为用户模型在App根目录中。所以我将实例更改为
\App\User::class
之后它起作用了