我对 Symfony2 比较陌生,到目前为止我很喜欢它——除了这个我一直遇到的问题。
可怕的(对我来说):教义:生成:实体
当我开始我的第一个 Symfony2 项目时,我无法使该命令正常工作,最终只使用了学说:generate:entity,它工作得很好。
但是,这一次我试图为已经有数据库表的系统编写一个应用程序。我按照以下说明进行操作:Symfony2 Docs似乎一切正常,除了像往常一样的原则:generate:entities 位。
我有以下实体文件@My/Bundle/FeedManagerBundle/Entity/Feeds.php
<?php
namespace My\Bundle\FeedManagerBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Feeds
*
* @ORM\Table(name="feeds")
* @ORM\Entity
*/
class Feeds
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer", nullable=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="feed_label", type="string", length=100, nullable=false)
*/
private $feedLabel;
/**
* @var integer
*
* @ORM\Column(name="advertiser_id", type="integer", nullable=false)
*/
private $advertiserId;
/**
* @var boolean
*
* @ORM\Column(name="active", type="boolean", nullable=false)
*/
private $active;
}
在 My/Bundle/FeedManagerBundle/Resources/config/doctrine/Feeds.orm.yml
Feeds:
type: entity
table: feeds
fields:
id:
id: true
type: integer
unsigned: false
nullable: false
generator:
strategy: IDENTITY
feedLabel:
type: string
length: 100
fixed: false
nullable: false
column: feed_label
advertiserId:
type: integer
unsigned: false
nullable: false
column: advertiser_id
active:
type: boolean
nullable: false
lifecycleCallbacks: { }
这是我得到的错误:
$ php app/console doctrine:generate:entities My/Bundle/FeedManagerBundle/Entity/Feeds --path=src
Generating entity "My\Bundle\FeedManagerBundle\Entity\Feeds"
[Doctrine\Common\Persistence\Mapping\MappingException]
Invalid mapping file 'My.Bundle.FeedManagerBundle.Entity.Feeds.orm.yml' for class 'My\Bundle\FeedManagerBundle\Entity\Feeds'.
doctrine:generate:entities [--path="..."] [--no-backup] name
我尝试将 yml 文件的名称更改为完整路径。我还尝试将 yml 文件的第一行更改为完整路径,并且我尝试同时做这两件事。似乎没有任何效果,现在我要开始把头发拉出来了。谁能想到这可能不起作用的任何原因?