【问题标题】:Laravel5.2: controller class not found when i try to handle dataLaravel5.2:当我尝试处理数据时找不到控制器类
【发布时间】:2016-06-02 06:48:41
【问题描述】:

在控制器中调用模型时出错。

我的 app/Models/AdminModel.php 中的代码:

<?php
namespace App\models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Foundation\Auth\User as Authenticatable;
class AdminModel extends Authenticatable
{
    protected $table='admin';
    protected $primaryKey='admin_id';
    public function getAuthPassword(){
        return $this->admin_pass;
    }
    public function getAdminInfo(){
        $admin=DB::table("admin")->get();
        return $admin;
    }
}
?>

我的 app/http/controllers/AdminController.php 中的代码:

<?php
namespace App\Http\Controllers;
use App\Http\Requests;
use Hash;
use Illuminate\Support\Facades\Validator;
use Auth;
use Request;
use Captcha;
use App\Models\AdminModel;
class AdminController extends Controller
{
    public function index()
    {
        if (!Auth::check()) {
            return redirect('admin/login');
            exit;
        }
        $admin=Admin::getAdminInfo(); //here is where the error occurs
        exit;
        return view('admin_index');
    }
}
?>

错误描述: AdminController.php 第 23 行中的 FatalErrorException: 找不到类“App\Http\Controllers\Admin”

我的问题是什么?谢谢

【问题讨论】:

    标签: php class laravel


    【解决方案1】:

    那是因为你的班级名称是AdminModel。所以,而不是:

    Admin::getAdminInfo()
    

    你应该使用:

    AdminModel::getAdminInfo()
    

    另外,请注意您正在静态调用该方法,因此您也必须将其定义为静态:

    public static function getAdminInfo()
    

    【讨论】:

      【解决方案2】:

      检查您的路线并完成通话

      AdminModel::getAdminInfo();
      

      而不是

      Admin::getAdminInfo();
      

      并且功能在 AdminModel 中是静态的

       public static function getAdminInfo(){
       $admin=DB::table("admin")->get();
       return $admin;
       }
      

      【讨论】:

        猜你喜欢
        • 2015-04-14
        • 2012-04-18
        • 2012-06-01
        • 1970-01-01
        • 2013-05-25
        • 2013-03-28
        • 1970-01-01
        • 1970-01-01
        • 2020-10-19
        相关资源
        最近更新 更多