Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/265.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 无法生成该表“;“用户”;_Php_Symfony_Symfony 2.1_Fosuserbundle - Fatal编程技术网

Php 无法生成该表“;“用户”;

Php 无法生成该表“;“用户”;,php,symfony,symfony-2.1,fosuserbundle,Php,Symfony,Symfony 2.1,Fosuserbundle,安装FOSUserBundle()时,我尝试使用以下命令生成我的表fos\u user: php app/console doctrine:schema:update --force 但是控制台返回以下消息 无需更新-您的数据库已与当前实体元数据同步 我使用Symfony 2.1和最新版本来创建FOSUserBundle app/AppKernel.php包含 new FOS\UserBundle\FOSUserBundle(), fos_user: db_driver: orm #

安装FOSUserBundle()时,我尝试使用以下命令生成我的表
fos\u user

php app/console doctrine:schema:update --force
但是控制台返回以下消息

无需更新-您的数据库已与当前实体元数据同步

我使用Symfony 2.1和最新版本来创建FOSUserBundle

app/AppKernel.php包含

new FOS\UserBundle\FOSUserBundle(),
fos_user:
    db_driver: orm # other valid values are 'mongodb', 'couchdb' and 'propel'
    firewall_name: main
    user_class: Krpano\UserBundle\Entity\User
namespace Krpano\UserBundle\Entity;

use FOS\UserBundle\Entity\User as BaseUser;
use Doctrine\ORM\Mapping as ORM;

/**
 * @ORM\Entity
 * @ORM\Table(name="pouet")
 */
class User extends BaseUser
{
    /**
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    protected $id;

    public function __construct()
    {
        parent::__construct();
        // your own logic
    }
}
app/config/config.yml包含

new FOS\UserBundle\FOSUserBundle(),
fos_user:
    db_driver: orm # other valid values are 'mongodb', 'couchdb' and 'propel'
    firewall_name: main
    user_class: Krpano\UserBundle\Entity\User
namespace Krpano\UserBundle\Entity;

use FOS\UserBundle\Entity\User as BaseUser;
use Doctrine\ORM\Mapping as ORM;

/**
 * @ORM\Entity
 * @ORM\Table(name="pouet")
 */
class User extends BaseUser
{
    /**
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    protected $id;

    public function __construct()
    {
        parent::__construct();
        // your own logic
    }
}
src/Krpano/UserBundle/Entity/User.php包含

new FOS\UserBundle\FOSUserBundle(),
fos_user:
    db_driver: orm # other valid values are 'mongodb', 'couchdb' and 'propel'
    firewall_name: main
    user_class: Krpano\UserBundle\Entity\User
namespace Krpano\UserBundle\Entity;

use FOS\UserBundle\Entity\User as BaseUser;
use Doctrine\ORM\Mapping as ORM;

/**
 * @ORM\Entity
 * @ORM\Table(name="pouet")
 */
class User extends BaseUser
{
    /**
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    protected $id;

    public function __construct()
    {
        parent::__construct();
        // your own logic
    }
}
当我尝试访问我的网站时,出现以下错误:

MappingException:在链配置的命名空间FOS\UserBundle\Entity、Krpano\ServicesBundle\Entity中找不到类“Krpano\UserBundle\Entity\User”

你能帮我吗?

添加

new Krpano\UserBundle\KrpanoUserBundle(),
到您的app/AppKernel.php文件

无需更新-您的数据库已与当前实体元数据同步

表示由于AppKernel.php中缺少声明,实体未注册

条令只搜索处于活动状态的捆绑包

添加行后:

new Krpano\UserBundle\KrpanoUserBundle(),
就像这样:

public function registerBundles()
{
$bundles=数组(
...
新建Krpano\UserBundle\KrpanoUserBundle(),
新建FOS\UserBundle\FOSUserBundle(),
...
); ...
试试这个:

php app/console doctrine:schema:update --force
如果返回:

Database schema updated successfully! "1" queries were executed
你的问题是解决


我的答案只是对Carlos Granados答案的补充。

使用
composer.phar dump autoload--优化

运行时也会引发此错误:

php应用程序/控制台缓存:clear--env=prod--no debug

如果您运行:

/composer.phar更新


这一切又重新开始了。

我出现了这个错误,这是因为我不小心从我的实体类中删除了
@ORM\Entity()
行。哦。

我和你一样也遇到了同样的问题。你没有为条令实体创建yml。条令在数据库中生成shema需要这个文件

# src/Acme/UserBundle/Resources/config/doctrine/User.orm.yml
Acme\UserBundle\Entity\User:
    type:  entity
    table: fos_user
    id:
        id:
            type: integer
            generator:
                strategy: AUTO
然后在控制台中为composer更新自动加载

composer dump-autoload
然后调用模式生成器

php app/console doctrine:schema:update --force

你在AppKernel中注册了你的UserBundle吗?我的意思是,你有像new Krpano\UserBundle\KrpanoUserBundle()这样的行吗?哦…我忘记了那部分。现在没事了。非常感谢。好的,我将添加解决方案作为答案,以便你可以接受它