私はzend1でプロジェクトを開発してきましたが、イベントなどを利用するためにzend2に移行することにしました。
私の最初の問題は、モデルを使用するために必要な方法でモデルを使用する方法についてのチュートリアルが見つからないように見えることです。
私が持っているのは、/ api/soapとしてルーティングされるApiコントローラーです。
このsoapエンドポイントは、SOAPを介して公開したいすべてのメソッドを持つクラスをロードします
namespace MyProject\Controller;
$view = new ViewModel();
$view->setTerminal(true);
$view->setTemplate('index');
$endpoint = new EndpointController();
$server = new Server(
null, array('uri' => 'http://api.infinity-mcm.co.uk/api/soap')
);
$server->setObject($endpoint);
$server->handle();
そして、すべての機能を含む私のコントローラーは
namespace MyProject\Controller;
class EndpointController
{
public function addSimpleProducts($products)
{
}
}
今、私ができるようにしたいのは、このEndpointController内から製品モデルにアクセスすることです。
だから私はこれを試しました:
protected function getProductsTable()
{
if (!$this->productsTable) {
$sm = $this->getServiceLocator();
$this->productsTable= $sm->get('MyProject\Model\ProductsTable');
}
return $this->productsTable;
}
これを実行すると、EndpointController :: getServiceLocator()が未定義であるという致命的なエラーが発生します。
私はZend2に非常に慣れていませんが、Zend 1では、これは私の開発における非常にマイナーなステップであり、zend 2を解任して、zend 1に戻るか、symfony2に切り替えるという点に到達しているように感じます。教義を使用するには...
ヘルプ?