データーベース設計ではプログラミングを始める前に必ず設定しなければならないもので、第3者から見てもわかりやすく設計しなければならないものである。初見のものは何を書けばいいかわからないと思うのでここで書きたいと思う。
データベースを構成する要素は下記の通りになります。
1.サービスで扱う概念(エンティティ)
2.エンティティの属性
3.エンティティ同士の関係性(リレーション)
具体的にはなにを書けばわかからないので具体的に言えば、ER図に沿ってエンティティの概念、属性(カラムについて)、エンティティのアソシエーション、エンティティの制約について書けば良いです。
まず、どのようなエンティティが存在し、カラムを指定するのか決めます
example
user
name
telephone_number
e-mail
次に制約をマークダウン方式で記入していきます。
example
user
column | type | key |
---|---|---|
name | string | null: false, add_index |
telephone_number | integer | null: false, unique: true |
string | null: false |
次にアソシエーションをマークダウン方式で記入していきます
example
user
has_many :group
has_many :chat-group
has_many :tweets
このように考えるの今自分の中でのベターな方法だと考えられます。