English 中文(简体)
2. 理论和症状2
原标题:Doctrine and Symfony2 multiple manytomany references

这里我的问题。 我的dle子里有两ites。 我试图使电影管理成为泡沫。 然而,在若干情况下,行为者也可以是董事,反之亦然。 因此,我把他们称为“艺术家”。 然后,在电影实体的每个电影院中,我要指派一对“艺术家”担任主任,一对夫妇担任演员,一对夫妇则担任放映会/听众。 然而,我无法多次提及艺术家实体与许多Tomany关系。 这里我试图做的是:

/**
 * @ORMEntity
 * @ORMTable(name="movies")
 */
class Movie
{
    /**
     * @ORMId
     * @ORMColumn(type="integer")
     * @ORMGeneratedValue(strategy="AUTO")
     */
    protected $id;

    /**
     * @ORMColumn(type="string", length=100)
     */
    protected $title;

    /**
     * @ORMColumn(type="string", length=100)
     */
    protected $image;

    /**
     * @ORMManyToOne(targetEntity="Artist", inversedBy="movies")
     * @ORMJoinColumn(name="category_id", referencedColumnName="id")
     */
    protected $actors;

    /**
     * @ORMManyToOne(targetEntity="Artist", inversedBy="movies")
     * @ORMJoinColumn(name="category_id", referencedColumnName="id")
     */
    protected $directors;

    /**
     * @ORMManyToOne(targetEntity="Artist", inversedBy="movies")
     * @ORMJoinColumn(name="category_id", referencedColumnName="id")
     */
    protected $writers;

我如何避免这一问题?

最佳回答

你们可以使用另一类电影代表人们的作用。

class MovieRole 
{

    // many-to-one with Movie
    protected $movie;

    // many-to-one with Artist
    protected $artist;

    // string, role of the artist
    protected $role;

}

最新情况:

因此,你们的主人也一样:

电影:

class Movie 
{

    protected $id;

    protected $name;

}

艺术家:

class Artist 
{

    protected $id;

    protected $name;

}

艺术家实体和电影实体彼此不了解任何情况,即:<0>MovieRole的实体加入其中两个实体。

当你在电影上增加一名导演时,你坚持一个<条码>MovieRole的实体,相关电影实体、艺术家实体和主任作为角色。 如果你想让艺术家发挥另一个作用,则继续保留另一个“密码>MovieRole的实体,拥有相同的电影和艺术家,并写上这一角色。 或者,如果你想增加一位主任,则继续保留另一个“密码”——MovieRole的实体,该实体拥有同样的电影、新主任和主任。

当你想找到一部电影的导演时,请查询MovieRole的电影实体和作为参数的作用。 或者,如果你想找到艺术家的所有角色,请问:MovieRole 实体,艺术家是参数。

问题回答

暂无回答




相关问题
Brute-force/DoS prevention in PHP [closed]

I am trying to write a script to prevent brute-force login attempts in a website I m building. The logic goes something like this: User sends login information. Check if username and password is ...

please can anyone check this while loop and if condition

<?php $con=mysql_connect("localhost","mts","mts"); if(!con) { die( unable to connect . mysql_error()); } mysql_select_db("mts",$con); /* date_default_timezone_set ("Asia/Calcutta"); $date = ...

定值美元

如何确认来自正确来源的数字。

Generating a drop down list of timezones with PHP

Most sites need some way to show the dates on the site in the users preferred timezone. Below are two lists that I found and then one method using the built in PHP DateTime class in PHP 5. I need ...

Text as watermarking in PHP

I want to create text as a watermark for an image. the water mark should have the following properties front: Impact color: white opacity: 31% Font style: regular, bold Bevel and Emboss size: 30 ...

How does php cast boolean variables?

How does php cast boolean variables? I was trying to save a boolean value to an array: $result["Users"]["is_login"] = true; but when I use debug the is_login value is blank. and when I do ...

热门标签