「Ruby/rails/db接続」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→マイグレーション実行) |
(→できたtable) |
||
行30: | 行30: | ||
CREATE TABLE `students` ( | CREATE TABLE `students` ( | ||
`id` bigint(20) NOT NULL AUTO_INCREMENT, | `id` bigint(20) NOT NULL AUTO_INCREMENT, | ||
− | ` | + | `name` varchar(255) DEFAULT NULL, |
`created_at` datetime NOT NULL, | `created_at` datetime NOT NULL, | ||
`updated_at` datetime NOT NULL, | `updated_at` datetime NOT NULL, |
2017年11月6日 (月) 21:31時点における版
目次
databaseのschemaを作っておく
create database helloworld_development default character set utf8mb4;
db設定追加
vi config/database.yml
host: localhost username: user1 password: passwoireru
DBインターフェイス用モデル(マイグレーション)作成
rails generate scaffold student name:string
db/migrate/20110603100919_create_students.rbに出来ている
DBインターフェイス用モデル(マイグレーション)削除
rails destroy scaffold student
マイグレーション実行
developmentの場合
rails db:migrate RAILS_ENV=development
productionの場合
rails db:migrate RAILS_ENV=production
db/schema.rbができdbにtableが作成される。
マイグレーション実行初期化
以下実行後マイグレーション再実行
rails db:migrate version=0
できたtable
CREATE TABLE `students` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `name` varchar(255) DEFAULT NULL, `created_at` datetime NOT NULL, `updated_at` datetime NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4
idにunsignedが入ってないのに注意。
httpアクセス
ttp://localhost:3000/students