sandonemaki/my_read_memo

ref:randoku_imgsテーブルのカラムreading_stateを変更する

Closed this issue · 0 comments

概要

booksテーブルのカラム名「reading_state」とrandoku_imgsテーブルのカラム名「reading_state」がかぶっているため、
randoku_imgsテーブルのカラム名を「is_already_read0/1のbooleanに変更する
今後必ずカラムを一意にしたいわけではない。
今回に関しては別にすることで検索上のメリットが大きいため変更することにする。

詳細

grep検索でreading_stateメソッドが使われている箇所を調べると、カラム名の被りがあった。
Bookの乱読/既読/精読を表現するカラム名が「reading_state
Book.randoku_imgsの未読/既読を表現するカラム名が「reading_state

booksテーブル

create_table "books", force: :cascade do |t|
  t.integer "reading_state", default: 0, null: false
end

randoku_imgsテーブル

create_table "randoku_imgs", force: :cascade do |t|
  t.integer "reading_state", default: 0, null: false
end

変更内容

  • 一時変数名「reading_state」を適正なものに変更
  • それ以外に内容に沿っていない一時変数名があれば変更する
  • randoku_imgsの未読/既読を表現するカラム名を「is_already_read0/1のbooleanに変更する

grepで見つかった変更予定のrandoku_imgsの「reading_satate」メソッド

app/controllers/books_controller.rb:72:          
book.randoku_imgs.find_by(id: img_id).reading_state = reading_id

app/modules/reading_state.rb:7:    
@randoku_imgs = book.randoku_imgs.group('reading_state').size

app/view_models/view_model/books_new.rb:26:      
reading_state = book.randoku_imgs.group('reading_state').size