未显示 Codeigniter 4 验证错误

Codeigniter 4 validation errors not showing

我的 Codeigniter 4 验证错误消息存在一些问题,验证工作正常但错误消息未显示,我不知道出了什么问题。以下是我的代码:

控制器

public function register()
    {
        $data = [];
        helper(['form']);
        
        // To add in is_unique
        
        if($this->request->getMethod() == 'post'){
            //validations
            $rules = [
                'username' => 'required',
                'email' => 'required|valid_email',
                'firstname' => 'required',
                'lastname' => 'required',
                'dob' => 'required',
                'country' => 'required',
                'contact' => 'required',
                'password' => 'required'
            ];
            
            if(!$this->validate($rules)){
                $data['validation'] = $this->validator;
            }else{
                //store information into database
                
                
            }
        }
        
        echo view('templates/header', $data);
        echo view('account/register');
        echo view('templates/footer');
    }

查看

<?php if(isset($validation)): ?>
            <div class="form-group col-12 col-md-12">
                <div class="alert alert-danger" role="alert">
                    <?php $validation->listErrors() ?>
                </div>
            </div>
            <?php endif; ?>

在此先感谢您的帮助!

好的。我观看了一些视频并设法通过更改

使其正常工作
<?php $validation->listErrors() ?> 
to 
<?php echo \Config\Services::validation()->listErrors() ?>

根据 ci4 documentation 您可以通过以下两种方式 display/get 错误列表-

<?= \Config\Services::validation()->getErrors() ?>

<?= \Config\Services::validation()->listErrors() ?>