私はsymfony 2コマンドクラスを使用してバッチファイルを構築しています。私は、バンドル内のコントローラからDBを扱う機能を持っているsymfony 2のコマンドクラスでクラスコントローラ関数を使用する方法は?
class SubmitDisclosureController extends FOSRestController implements MEAuthController { ... public function discDetails($discId) {
$emr = $this->getDoctrine()->getEntityManager();
class BatchJobCommand extends Command
{
protected function execute(InputInterface $input, OutputInterface $output)
{
$output->writeln([
'User Creator',
'============',
'',
]);
// retrieve the argument value using getArgument()
$output->writeln('First batch job')
$disc = new SubmitDisclosureController();
$disc->discDetails('42094');
`
以下のようなコマンドsrc/AppBundle/Command/BatchJobCommand.php
からこれを呼び出しています
、それをPHP Fatal error: Call to a member function has() on null in C:\xampp\htdocs\GR\ vendor\symfony\symfony\src\Symfony\Bundle\FrameworkBundle\Controller\Controller. php on line 288
コマンドクラスからコントローラの機能を呼び出すことにより、コードを再利用することはできません与えますか?
は、実際に何が必要実際にはどのサービスでありますはい、あなたが正しいコントローラとコマンド –
@MateiMihaiの両方で使用することができます。しかし、この変更は既存の機能に影響します。 –