1

Phalcon でのマイクロ コレクションの設定に問題があります。コントローラーでリクエストを処理したいのですが、マイクロ コレクションで setHandler() を使用してからルートをマップすると、リクエストを行っても何も起こりません。

public/index.php のコードは次のとおりです。

use Phalcon\Loader;
use Phalcon\Mvc\Micro;
use Phalcon\Mvc\Micro\Collection as MicroCollection;

try {

    $loader = new Loader();
    $loader->registerDirs(array(
        '../app/controllers/',
        '../app/models/',
        '../app/libraries/'
    ))->register();

    $app = new Micro();

    $col = new MicroCollection();

    $col->setHandler(new PostsController());

    $col->get('/', 'index');

    $app->mount($col);

    echo "Test";

} catch(Exception $e) {

    echo "Global Exception: " . $e->getMessage() . " . on line " . $e->getLine() . ", " . $e->getFile();

}

投稿コントローラーには以下が含まれます。

use Phalcon\Mvc\Controller;

class PostsController extends Controller
{

    public function index() {

        echo "This is posts controller index";

    }

}

"/" へのリクエストは $app->mount($col) 呼び出しの後に "Test" を出力しますが (スクリプトをクラッシュさせる隠れたエラーがないことを確認するためだけに)、PostsController インデックス アクションは実行されません (つまり、"This is posts controller索引")。

Micro を単独で使用すると、Micro Collection がなくても問題なく動作し、エラーは報告されていません。

4

0 に答える 0