在我的Codeigniter 4项目中,我收到了一条错误消息:Call to a member function getVar() on null
。它只发生在构造中:命名空间应用\控制器;
use CodeIgniter\RESTful\ResourceController;
use App\Controllers\BaseController;
use CodeIgniter\HTTP\IncomingRequest;
use CodeIgniter\HTTP\Response;
public function __construct() {
$this->request->getVar('key'); //Not works
}
public function index() {
$this->request->getVar('key'); //Works
}
有什么建议吗?谢谢。
2条答案
按热度按时间tcbh2hod1#
您确实不应该在控制器中使用__construct。
相反,您应该使用与baseController相同的结构和iniController,这样您就可以访问请求响应和记录器。
如果你真的想使用__construct,那么你必须按照这里所说的去做,但是你可以使用服务助手,这样它的方式会更干净,如下所示:
2nc8po8w2#
解决方案: