教义 2,有助于对关系进行注释吗?

发布于 2024-11-17 01:08:12 字数 453 浏览 0 评论 0原文

我从doctrine2开始。所以,我以下面的例子来了解如何对表关系进行注释,例如:

-------- 表

USER ID 用户名 group_id

组 ID 名称

给定用户是组的一部分(管理员、成员)。例如, 约翰是管理员 彼得是会员

<?php

/** @Entity */
class User
{
    // ...

    /**
     * @ManyToOne(targetEntity="group")
     * @JoinColumn(name="group_id", referencedColumnName="id")
     */
    private $group;
}

/** @Entity */
class group
{

}
?>

我想了解这是否正确?

感谢您的关注!

I'm starting out with doctrine2. So, I'm taking the following example, to understand how to do annotations for table relationship, for example:

-------- the tables

USER
id
username
group_id

GROUP
id
name

A given user, is part of a group (admin, member). For example,
john is admin
peter is member

<?php

/** @Entity */
class User
{
    // ...

    /**
     * @ManyToOne(targetEntity="group")
     * @JoinColumn(name="group_id", referencedColumnName="id")
     */
    private $group;
}

/** @Entity */
class group
{

}
?>

I would like to understand if this is correct ?

Thanks for looking!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

你的背包 2024-11-24 01:08:12

这是正确的。

您甚至可以省略 @JoinColumn 语句,因为它将默认为此值。

如果您想要双向关系,您还必须在组类上设置关系,如下所示:

@OneToMany(targetEntity="User", mappedBy="group")
private $users;

Thats correct as it is.

You could even ommit the @JoinColumn Statement as it will default to this values.

If you want a bidirectional relationship you also have to set the relationship on the group class like this:

@OneToMany(targetEntity="User", mappedBy="group")
private $users;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文