3단계 Ruby - 활성 레코드 마이그레이션 - 마이그레이션 만들기
3244 단어 rubyprogrammingbeginnerswebdev
#put this code in your terminal
#make sure you are in your project's directory that you are
#currently working or building
bundle exec rake db:create_migration NAME=create_students
이 코드를 실행하면 db/migrations에 timestamps_create_students.rb라는 새 파일이 생성됩니다.
├── 앱
│ └── 모델
│ └── 학생.rb
├── 구성
│ └── 환경.rb
├── 디비
│ └── 마이그레이션
│ └── 20220605095220_create_students.rb # 여기 새 파일
├── 사양
├── 젬파일
├── Gemfile.lock
└── 레이크파일
마이그레이션 시작 시의 타임스탬프는 마이그레이션에 대한 버전 제어의 일부로 사용되며 올바른 순서로 실행되는지 확인합니다.
또한 이 rake 작업은 우리를 위해 몇 가지 코드를 추가합니다.
# db/migrate/20220605095220_create_students.rb
class CreateStudents < ActiveRecord::Migration[6.1]
def change
end
end
테이블 이름 :students 다음에 우리는 테이블에 다른 열을 추가하는 데 도움이 되는 특수한 활성 레코드 마이그레이션 개체인 블록 매개 변수 t를 전달하는 코드 블록을 작성합니다.
# db/migrate/20220605095220_create_students.rb
def change
create_table :students do |t|
end
end
class CreateStudents < ActiveRecord::Migration[6.1]
def change
create_table :students do |t|
t.string :first_name
t.string :last_name
t.integer :age
t.string :school
# the id column will be generated automatically for every table.
end
end
end
bundle exec rake db:migrate
== 20220605095220 CreateStudents: migrating ====================================
-- create_table(:students)
0.0008s
== 20220605095220 CreateStudents: migrated (0.0009s) ===========================
이 명령 실행:
아래와 같이 db/schema.rb 파일이 표시됩니다.
ActiveRecord::Schema.define(version: 2022_06_05_095220) do
create_table "students", force: :cascade do |t|
t.string "first_name"
t.string "last_name"
t.integer "age"
t.string "school"
end
end
이 Rake 작업을 사용하여 마이그레이션 상태를 보고 마이그레이션이 데이터베이스를 업데이트했는지 확인하십시오.
bundle exec rake db:migrate:status
database: db/development.sqlite3
Status Migration ID Migration Name
--------------------------------------------------
up 20220605095220 Create students
이제 Rake 작업을 사용하여 마이그레이션을 성공적으로 생성했습니다!
Reference
이 문제에 관하여(3단계 Ruby - 활성 레코드 마이그레이션 - 마이그레이션 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/inversed/phase-3-ruby-active-record-migration-creating-migrations-4p1p텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)