【发布时间】:2017-03-07 13:31:05
【问题描述】:
Symfony 使用一组编码标准来为我们设置如何编程以及我们应该使用什么风格。我的问题很简短。我想知道 symfony(连同学说 ORM)在构建和构建我的数据库时是否有一套类似的标准。
例如:
- 我应该使用 Camel Case 吗?
- 我的表名应该是 user 还是 users
- 我是否使用大写字母?
- 推荐使用什么字符集?
【问题讨论】:
标签: doctrine-orm symfony standards
Symfony 使用一组编码标准来为我们设置如何编程以及我们应该使用什么风格。我的问题很简短。我想知道 symfony(连同学说 ORM)在构建和构建我的数据库时是否有一套类似的标准。
例如:
【问题讨论】:
标签: doctrine-orm symfony standards
基本上,您不需要关心数据库命名,因为 Doctrine 会为您做所有事情。
您应该使用Doctrine cli commands 根据您的实体生成数据库架构,或者更好地使用Doctrine Migrations 来维护更改。
我应该使用 Camel Case 吗?
对于实体类名称,我建议坚持使用 PSR,所以是的,使用 CamelCase。
Symfony 默认使用下划线命名策略,因此实体CamelCase 将生成为表camel_case(如果未手动覆盖)。
你可以set another naming strategy,但默认的下划线策略是一个不错的选择。
我的表名应该是 user 还是 users
user 是 ANSI SQL 保留字,所以我推荐使用users。或者,如果您更喜欢使用单数形式的实体,请尝试使用 person。
我是否使用大写字母?
同样,Doctrine 命名策略将为您解决这个问题。此外,例如 postresql 将所有表名和此类标识符转换为小写,因此显式使用大写字母可能会导致问题。
推荐什么字符集?
使用 UTF-8(如果需要,更具体地说是 utf8mb4)。使用任何其他的理由很少。
【讨论】: