Laravel控制器不存在

时间:2014-09-17 16:44:13

标签: php laravel laravel-4 controller namespaces

好的,所以我有一段时间没有遇到过这个问题,但我已经做了大部分选择,我可以解决这个问题并阅读其他人的帖子。我现在迷路了。

创建控制器后,我执行了“php ./composer.phar dump-autoload”命令,说它生成成功,并且仍然说控制器不存在。它所在的文件夹中已经有3个其他控制器,而且每个控制器都工作,只是这个控制器出现问题。

控制器代码:(/apps/controllers/api/apiBulkController.php)

class apiBulkController extends BaseController {

private $error;

public function __construct()
{
    // Set default values
    $this->error = 'false';
}

public function create()
{
    $bulk = array();

    // Authenticate the user using the api
    if (!isset($_SERVER['PHP_AUTH_USER'])) {
        $this->authenticate();

    } else {

        $auth = User::where('username', $_SERVER['PHP_AUTH_USER'])->first();

        // Check to see if the user is valid
        if(isset($auth->authkey) && $auth->authkey == $_SERVER['PHP_AUTH_PW'])
        {
            $req = Request::get();

            $bulk = new Bulk;
            // Add Columns by example below
            $bulk->save();

            //ex. $Bulk->Name = Request::get('');  $object->column_name = Request;

            // Return JSON data
            return Response::json(array(
                'error' => $this->error
            ));

        }
        else
        {
            echo $_SERVER['PHP_AUTH_USER'].": Your hash seems to be incorrect.";
        }
    }
}

public function authenticate()
{
    header('WWW-Authenticate: Basic realm="User Authentication (Username / Hash)"');
    header('HTTP/1.0 401 Unauthorized');
    echo "You must enter a valid Login ID and Hash to access this resource\n";
    exit;
}

}

1 个答案:

答案 0 :(得分:2)

您应该添加

namespace api;

在控制器的开头

并在类名前使用您的命名空间运行控制器,例如在路由api\apiBulkController@create而不是apiBulkController@create

如果错误发生变化,您应该更改您的类添加名称空间或用于其他类,例如extends BaseController而不是extends \BaseController等等