Closed ookunirina closed 1 year ago
MovierecordsやRecommendationsに映画の情報が入っていますが、映画情報を管理するテーブルは作らないのですかね? 星評価(5段階評価)はenumを使うのならintegerで良いと思います。
レビューありがとうございます。
MovierecordsやRecommendationsに映画の情報が入っていますが、映画情報を管理するテーブルは作らないのですかね?
TmdbMovies: TMDb APIから取得した映画情報を管理するテーブル Id user_id: ユーザーの外部キー title: stringタイトル poster_path: string映画のポスター画像 genre: stringジャンル を新しく作成する考えですがいかがでしょうか?
星評価(5段階評価)はenumを使うのならintegerで良いと思います。
承知しました。 star:integerといたします。
@ookunirina 良いと思います!上記を加えた上でER図を再作成してみてください。
再作成したER図です。 レビューをお願いいたします。
Users: ユーザー情報を管理するテーブル id name: ユーザの名前 email: ユーザーのメールアドレス avatar: プロフィール写真 crypted_password: ハッシュ化されたパスワード salt: ハッシュ時のsalt reset_password_token: パスワードリセット時のトークン reset_password_token_expires_at: パスワードリセット時のトークン作成日時 reset_password_email_sent_at: パスワードリセットのメール送信日時 access_count_to_reset_password_page: パスワードリセット画面にアクセスした回数 created_at: 作成日 updated_at: 更新日 (gem sorceryを使用する予定です)
Movierecords: ユーザーが見た映画の記録を管理するテーブル id user_id: ユーザーの外部キー title: 映画のタイトル image_url: ユーザーが持つ半チケの写真もしくは、ムビチケ写真(近くに文章を書いて映画のポスター画像にしないようにしてもらう) genre: 映画のジャンル star: 星評価(5段階評価) tag: タグ review: 感想 created_at: 作成日 updated_at: 更新日
Recommendations: ユーザーがおすすめする映画情報を管理するテーブル id user_id: ユーザーの外部キー poster_path:映画のポスター画像 title: 映画のタイトル genre: 映画のジャンル created_at: 作成日 updated_at: 更新日
Tmdbmovies: TMDb APIから取得した映画情報を管理するテーブル Id user_id: ユーザーの外部キー title: 映画のタイトル poster_path: 映画のポスター画像 genre: 映画ジャンル
Likes:いいねを管理するテーブル id user_id: ユーザーの外部キー movierecords_id: ユーザーが見た映画の記録の外部キー created_at: 作成日 updated_at: 更新日
Tags: タグを管理するテーブル Id name:タグ名
Movie_tags: MovierecordsとTagsを紐づけるための中間テーブル Id movierecords_id: ユーザーが見た映画の記録の外部キー tag_id: タグの外部キー
Schedules: 映画関係の予定管理テーブル Id user_id: ユーザーの外部キー title: タイトル content: 内容 start_time: 日付時刻 (gem SimpleCalendarを使用する予定です)
良さそうです 👍🏻 次の課題に進みましょう
ER図を作成しました. レビューをお願いいたします。
技術面談にて「テーブルが少ないので増やして下さい」との事でしたので、 Likes:いいねを管理するテーブル、Tags: タグを管理するテーブル、それに伴うMovie_tags: MovierecordsとTagsを紐づけるための中間テーブル、Schedules: 映画関係の予定管理テーブルを追加しました。 上記の関係によりREADMEに記載した内容を変更しました。
Users: ユーザー情報を管理するテーブル id name: ユーザの名前 email: ユーザーのメールアドレス avatar: プロフィール写真 crypted_password: ハッシュ化されたパスワード salt: ハッシュ時のsalt reset_password_token: パスワードリセット時のトークン reset_password_token_expires_at: パスワードリセット時のトークン作成日時 reset_password_email_sent_at: パスワードリセットのメール送信日時 access_count_to_reset_password_page: パスワードリセット画面にアクセスした回数 created_at: 作成日 updated_at: 更新日 (gem sorceryを使用する予定です)
Movierecords: ユーザーが見た映画の記録を管理するテーブル id user_id: ユーザーの外部キー title: 映画のタイトル image_url: ユーザーが持つ半チケの写真もしくは、ムビチケ写真(近くに文章を書いて映画のポスター画像にしないようにしてもらう) genre: 映画のジャンル star: 星評価(5段階評価) tag: タグ review: 感想 created_at: 作成日 updated_at: 更新日
Recommendations: ユーザーがおすすめする映画情報を管理するテーブル id user_id: ユーザーの外部キー movie_image:映画のポスター画像 movie_title: 映画のタイトル movie_genre: 映画のジャンル created_at: 作成日 updated_at: 更新日
Likes:いいねを管理するテーブル id user_id: ユーザーの外部キー movierecords_id: ユーザーが見た映画の記録の外部キー created_at: 作成日 updated_at: 更新日
Tags: タグを管理するテーブル Id name:タグ名
Movie_tags: MovierecordsとTagsを紐づけるための中間テーブル Id movierecords_id: ユーザーが見た映画の記録の外部キー tag_id: タグの外部キー
Schedules: 映画関係の予定管理テーブル Id user_id: ユーザーの外部キー title: タイトル content: 内容 start_time: 日付時刻 (gem SimpleCalendarを使用する予定です)
質問点 星評価(5段階評価)をこちら https://kina-kq.hatenablog.com/ で実装予定なのですがMovierecordsテーブルでstar(カラム)としていますがstar:integerとすれば良いのでしょうか?
TMDb API使用し映画のマスターデータを集めて 映画のポスター画像、映画のタイトル、映画のジャンルを表示する様にするにですが、 Recommendationsテーブルにて movie_image: string映画のポスター画像 movie_title: string映画のタイトル movie_genre 映画のジャンル Movierecordsテーブルにて title:stringtitle: 映画のタイトル genre:integer: 映画のジャンル としていますがカラムとデータ型をどの様にすれば良いかわからないです。