【问题标题】:Getting error Class 'Codeigniter\Model' not found in codeigniter 4在codeigniter 4中找不到错误类'Codeigniter \ Model'
【发布时间】:2020-10-24 22:09:51
【问题描述】:

我遇到了这个错误,很奇怪我到处检查,我认为代码很好。 问题是我想要控制器中的模型中的一个实例,但它给出了上面的错误 error image 我将把代码放在下面。 这是控制器

<?php namespace App\Controllers\User;

use App\Controllers\BaseController;

use App\Models\UserModel;

class Users extends BaseController{

    public function index(){
        echo view('includes/header');
        echo view('user/index');
        echo view('includes/footer');
    }

    public function login(){

    }
    public function register(){

        $model = new UserModel();

        if($this->request->getPost()){
            return "f";
        }
        
        echo view('includes/header');
        echo view('user/register');
        echo view('includes/footer');
    }

}

这是模型

<?php

namespace App\Models;

use Codeigniter\Model;

class UserModel extends Model
{

    protected $table      = 'users';
    protected $primaryKey = 'id';

    protected $returnType     = 'array';
    protected $useSoftDeletes = true;

    protected $allowedFields = ['email', 'username', 'password'];

    protected $useTimestamps = true;
    protected $createdField  = 'created_at';
    protected $updatedField  = 'updated_at';
    protected $deletedField  = 'deleted_at';

    protected $validationRules    = [
        'email' => 'required|valid_email',
        'username' => 'required|min_length[2]|max_length[10]',
        'password' => 'required|min_length[8]|max_length[20]'
    ];
    protected $validationMessages = [
        'email' => [
            'required' => 'This field is required',
            'valid_email' => 'email is not valid make sure you wrote it right'
        ],
        'username' => [
            'required' => 'This field is required',
            'min_length' => 'the min username is 2',
            'max_length' => 'the max username is 10'
        ],
        'password' => [
            'required' => 'This field is required',
            'min_length' => 'the min pasword is 8',
            'max_length' => 'the max pasword is 20'
        ]
    ];
    // protected $skipValidation     = false;

}

请帮助我被困在那里:(

........

【问题讨论】:

  • 最有可能:传递给 view() 函数的任何文件和目录名称必须与实际目录和文件本身的大小写匹配,否则系统将在区分大小写的平台上抛出错误。你可以阅读更多关于它的信息here,控制器和模型也是如此
  • @VPrezn 错误消息说它不能正常Codeigniter\Model,您是否尝试过CodeIgniter\Model

标签: php codeigniter web


【解决方案1】:

您使用的文件名是:

use Codeigniter/Model

将其替换为:

use CodeIgniter/Model

【讨论】:

  • 我们从什么时候开始在创建模型时使用正反斜杠('/')?见:codeigniter.com/user_guide/models/…
  • 好吧,我的错,但主要错误是骆驼外壳,你称之为“Codeigniter”,但在 linux 服务器上,文件命名很敏感,你应该用“CodeIgniter”替换它。
猜你喜欢
  • 1970-01-01
  • 2015-07-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-04
  • 2013-01-31
  • 2016-08-02
  • 1970-01-01
  • 2022-08-21
相关资源
最近更新 更多