我对 DI 和 IoC 的这个概念很陌生,所以我可能做错了,但我试图将与控制器匹配的模型注入到控制器构造函数(UserModel -> UsersController)中,以便我以后可以模拟它。
所以我的模型看起来像:
use Illuminate\Auth\UserInterface;
class User extends Eloquent implements UserInterface {
public function getAuthIdentifier()
{
return $this->getKey();
}
public function getAuthPassword()
{
return $this->password;
}
}
然后我试图像这样注入UsersController:
class UsersController extends Controller {
protected $user;
public function __construct(User $user)
{
$this->user = $user;
}
public function index()
{
//dd( $this->user);
$users = $this->user->all();
foreach ( $users as $user )
print_r($user);
return;
}
}
然后,当我在浏览器中点击此控制器时,我收到“无法解析的依赖解析”错误。
我注意到只有当我尝试注入的类是 eloquent 的子类时才会发生这种情况,如果我尝试使用不扩展 eloquent 的自定义类的相同代码,那么它可以正常工作。
我错过了什么吗?