在Doctrine中对可翻译实体进行版本控制(symfony2)

时间:2012-06-15 11:19:40

标签: php version-control orm symfony doctrine-orm

使用gedmo可翻译行为整合某个实体的版本控制系统的最佳方法是什么?

Gedmo Loggable似乎不像这样:

/**
 * @ORM\Entity(repositoryClass="Alef\JobOffersBundle\Repository\JobOfferRepository")
 * @ORM\Table(name="alef_job_offer")
 * @Gedmo\Loggable
 */
class JobOffer implements Loggable, Translatable, UserOwnerInterface {

    /**
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    protected $id;

    /**
     * @ORM\ManyToOne(targetEntity="Alef\UserBundle\Entity\User")
     * @ORM\JoinColumn(name="id_user", referencedColumnName="id")
     */
    protected $user;

    /**
     * @var datetime $created
     *
     * @Gedmo\Timestampable(on="create")
     * @ORM\Column(name="created", type="datetime")
     */
    protected $created;

    /**
     * @var datetime $updatedAt
     *
     * @ORM\Column(type="datetime")
     * @Gedmo\Timestampable(on="update")
     */
    protected $updatedAt;

    /**
     * @Gedmo\Versioned
     * @Gedmo\Translatable
     * @ORM\Column(name="title", type="string", length=255)
     */
    protected $title;

    /**
     *
     * @Gedmo\Versioned
     * @Gedmo\Translatable
     * @ORM\Column(name="description", type="text")
     */
    protected $description;

    [...]

我在data中获得了空ext_logged_entries字段。

或许有更好的方法来存储可翻译和版本化的实体?也许不使用Gedmo学说扩展?

1 个答案:

答案 0 :(得分:1)

无法一起使用Loggable和Translatable。 看看here