PHP Phalcon Framework を使用して Web サイトを開発していますが、ルーターの問題で本当に困っています。
ルートが一致するように HTTP メソッドを制限するために、次の宣言を使用します。
$router->addGet('/admin/paginas', array(
'namespace' => 'Backend\Controllers',
'controller' => 'pagina',
'action' => 'list'
));
しかし、次のエラーで失敗します。
Unexpected value type: expected object implementing Phalcon\DiInterface, null given
add を使用して同じ services.php ファイルで定義された他のルートがいくつかありますが、それらには問題はありません。たとえば、次のようになります。
$router->add('/oportunidades-trabajo', array(
'controller' => 'page',
'action' => 'oportunidadesTrabajo'
));
完全に正常に動作します。名前空間の削除、コントローラーの変更、短いシンタックスの使用、addGet の代わりに ->via() の使用を試みましたが、何も解決しません。
このルート宣言を削除すると、すべて正常に動作します。
ルーターの完全な宣言は次のとおりです。
$di->set('router', function () {
$router = new Router(false);
$router->removeExtraSlashes(true);
# FRONT END
$router->add('/oportunidades-trabajo', array(
'controller' => 'page',
'action' => 'oportunidadesTrabajo'
));
# BACK END - Paginas
# list
$router->addGet('/admin/paginas', array(
'namespace' => 'Backend\Controllers',
'controller' => 'pagina',
'action' => 'list'
));
# NOT FOUND
$router->notFound(array(
'controller' => 'page',
'action' => 'page404'
));
$router->handle();
return $router;
});
私はこれで立ち往生していて、プロジェクトを続けることができないので、あなたの助けに感謝します.
お時間をいただきありがとうございます。