2017-03-07 5 views
0

Symfonyはコーディング標準を使用して、プログラミング方法と使用するスタイルを設定します。私の質問は短くてシンプルです。 symfony(教義のORMと一緒に)がデータベースの構築と構造化に関して同じような標準を持っているかどうかを知りたいと思います。例えばSymfonyとDoctrineにデータベース標準がありますか?

  • 私はキャメルケースを使用する必要がありますか?
  • テーブル名をユーザーまたはユーザーにする必要があります
  • 大文字は使用しますか?
  • どのような文字セットが推奨されますか?

答えて

2

基本的に、Doctrineはすべてのことを行うため、データベースの名前付けに気を付ける必要はありません。

エンティティに基づいてデータベーススキーマを生成する場合は、Doctrine cli commandsを使用するか、変更を維持するためにDoctrine Migrationsを使用することをお勧めします。

キャメルケースを使用しますか?

エンティティクラスの名前については、PSRを使用することをおすすめします。そう、CamelCaseを使用してください。

Symfonyはデフォルトでアンダースコア命名方式を使用しているため、CamelCaseエンティティはテーブルcamel_case(手動でオーバーライドしない場合)として生成されます。

set another naming strategyでも可能ですが、デフォルトのアンダースコア戦略は最適です。

私のテーブル名は、ユーザーまたはユーザー

userであるべきANSI SQL予約語であるので、私はusersを使用することをお勧めします。単体でエンティティを持つことが望ましい場合は、代わりにpersonを試してください。

大文字は使用しますか?

再び、Doctrineの命名戦略で解決します。さらに、たとえばpostresqlはすべてのテーブル名とそのような識別子を小文字に変換するので、明示的に大文字を使用すると問題が発生する可能性があります。

どのような文字セットが推奨されますか?

必要に応じてUTF-8(またはさらに具体的にはutf8mb4)を使用してください。他のものを使用する理由はほとんどありません。

関連する問題