稍微修改一下我的单位后,我想用简单的php app/console doctrine: update --force
进行更新。但是没有执行任何操作,另外没有响应。然后我做了一个php app/check.php
,这意味着我没有问题(Your system is ready to run Symfony2 projects
)。我不明白,也没有提供错误。这就是我所做的:
Command: ********: ***** ProjetSymphony $ php app / console***
Answer (none): ******* **** $ ProjetSymphony***
如果有人有想法。
屏幕:
答案 0 :(得分:1)
尝试:
php app/console doctrine:schema:update --force
也许它只是一个结构错误。
答案 1 :(得分:0)
我终于找到了我的错误。我有一个阻止执行订单的命令文件( CreateUserCommand.php ) 如果有人想向我解释为什么这个cosait在执行我的订单时会出错? 这是文件:
<?php
namespace FP\UserBundle\Command;
use Symfony\Bundle\FrameworkBundle\Command\ContainerAwareCommand;
use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputOption;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
use FOS\UserBundle\Model\User;
use FOS\UserBundle\Command\CreateUserCommand as BaseCommand;
class CreateUserCommand extends BaseCommand
{
/**
* @see Command
*/
protected function configure()
{
exit;
echo "tes";
parent::configure();
$this
->setName('fp:user:create')
->getDefinition()->addArguments(array(
new InputArgument('age', InputArgument::REQUIRED, 'The age')
))
;
}
/**
* @see Command
*/
protected function execute(InputInterface $input, OutputInterface $output)
{
exit;
echo "tes";
$username = $input->getArgument('username');
$email = $input->getArgument('email');
$password = $input->getArgument('password');
$age = $input->getArgument('age');
$inactive = $input->getOption('inactive');
$superadmin = $input->getOption('super-admin');
$manipulator = $this->getContainer()->get('fos_user.util.user_manipulator');
$manipulator->setAge($age);
$manipulator->create($username, $password, $email, !$inactive, $superadmin);
$output->writeln(sprintf('Created user <comment>%s</comment>', $username));
}
/**
* @see Command
*/
protected function interact(InputInterface $input, OutputInterface $output)
{
exit;
echo "tes";
parent::interact($input, $output);
if (!$input->getArgument('age')) {
$age = $this->getHelper('dialog')->askAndValidate(
$output,
'Please choose a age:',
function($age) {
if (empty($age)) {
throw new \Exception('Lastname can not be empty');
}
return $age;
}
);
$input->setArgument('age', $age);
}
}
}
答案 2 :(得分:0)
此外,如果有人试图在较新的symfony版本(例如symfony 3.0)中运行php app/console
,则会收到错误:找不到文件,因为该文件已移至“bin”文件夹。现在要从控制台运行,您必须使用php bin/console
。为了防止这种变化使任何开始学习symfony并更新到3.0的人感到困惑。