Php 无法生成该表“;“用户”;
安装FOSUserBundle()时,我尝试使用以下命令生成我的表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 #
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()这样的行吗?哦…我忘记了那部分。现在没事了。非常感谢。好的,我将添加解决方案作为答案,以便你可以接受它