Symfony 和 Doctrine 中有数据库标准吗?

Pet*_*ter 2 standards symfony doctrine-orm

Symfony 使用一套编码标准来为我们规定如何编程以及应该使用什么风格。我的问题简短而简单。我想知道 symfony(与 ORM 学说一起)在构建和构建我的数据库时是否有一套类似的标准。

例如:

  • 我应该使用驼峰保护套吗?
  • 我的表名应该是 user 还是 users
  • 我使用大写字母吗?
  • 推荐什么字符集?

Fin*_*nwe 6

基本上,您不需要关心数据库命名,因为 Doctrine 会为您做所有事情。

您应该使用Doctrinecli命令根据您的实体生成数据库模式,或者更好地使用Doctrine 迁移来维护更改。

我应该使用驼峰保护套吗?

对于实体类名称,我建议坚持使用 PSR,所以是的,使用 CamelCase。

Symfony 默认使用下划线命名策略,因此实体CamelCase将生成为表camel_case(如果不手动覆盖)。

您可以设置其他命名策略,但默认的下划线策略是一个不错的选择。

我的表名应该是 user 还是 users

user是 ANSI SQL 保留字,因此我建议使用users. 或者,如果您更喜欢使用单数实体,请尝试person改为。

我使用大写字母吗?

同样,Doctrine 命名策略将为您解决这个问题。此外,例如postresql 将所有表名和此类标识符转换为小写,因此显式使用大写可能会导致问题。

推荐什么字符集?

使用 UTF-8(或更具体地说,如果需要,使用 utf8mb4)。没有什么理由使用其他的。