Ruby Legacy
DRY (Don't Repeat Yourself)
COC (Convention Over Configuration)
- Modeling: 데이터베이스를 설계하는 일련의 과정
Dependency
- What if? 만약 유저가 탈퇴를 해서 주문 정보가 사라진다면:
- 테이블에서 같이 삭제
- user_id (외래키)만 빈 값으로 바꿔줄 수 있음
- Destroy
- Nullify
- 참조하는 외래키를 빈 값으로 바꿔줌
- 모델링 시 점선으로 표기
rails db:create
rails generate model Item
rails g model Item
rails db:migrate
- 데이터베이스 마이그레이션: 개별 데이터베이스 파일을 데이터베이스에서 실행하지 않고 프레임워크의 특정 명령어를 실행하고 그 결과를 별도의 테이블로 관리하는 것
- schema.rb 파일에서는 절대 수정하지 말 것
- 마이그레이션 파일을 만들어서 해당 파일에서만 수정
- foreign key: 외부 테이블 정보를 끌어오기 위한 것
- 모델을 짤 때 dependency가 nullify일 경우는 null: false를 삭제