Doctrine orm 命名Symfony2/Doctrine主键的最佳实践

Doctrine orm 命名Symfony2/Doctrine主键的最佳实践,doctrine-orm,symfony,Doctrine Orm,Symfony,我正在将一个站点迁移到Symfony2。站点具有主键整数具有名称的表,遵循表名+id的约定。例如,表节点具有主键nodeid 一方面,这意味着复杂的查询更容易阅读和理解。另一方面,当条令想要为每个表使用id时,总是编写一个唯一的id名称是一件麻烦的事 Symfony2/Doctrine2中是否有命名主键的最佳实践或标准约定?谢谢 实体属性的名称完全独立于数据库中列的名称 /** * @orm:Entity() * @orm:Table(name="custom_table_name") *

我正在将一个站点迁移到Symfony2。站点具有主键整数具有名称的表,遵循表名+id的约定。例如,表节点具有主键nodeid

一方面,这意味着复杂的查询更容易阅读和理解。另一方面,当条令想要为每个表使用id时,总是编写一个唯一的id名称是一件麻烦的事


Symfony2/Doctrine2中是否有命名主键的最佳实践或标准约定?谢谢

实体属性的名称完全独立于数据库中列的名称

/**
 * @orm:Entity()
 * @orm:Table(name="custom_table_name")
 */
class Node {
    /** 
     * @orm:Id @orm:Column(type="integer", name="custom_id_name_eg_node_id")
     * @orm:GeneratedValue(strategy="AUTO")
     */
    protected $id;
}
从节点n中选择n.id生成的SQL查询;DQL查询:

SELECT u1.custom_id_name_eg_node_id FROM custom_table_name u1;

您使用什么进行实体配置?Yml/annotation/xml?注释。我看到了答案——我没有意识到条令的实体属性可以有不同的名称。不过,作为实践,我将开始使用id作为主键,然后使用table name+\u id,例如,当主键用作外键时,使用node\u id。这似乎与条令的文件相符。谢谢