Ruby での開発を進めていると、
複数バージョンの Rails を同時にメンテする事もあります。
それぞれ正しいバージョンのツールを使わないと困ったことになります。
例えば、
単に **rails -v** とすると、
Ruby に登録されている最新Rails のバージョンが表示されます。
Rails new した時に、
bin フォルダに、使うべき最低限のツールが用意されています。
なので、
ruby bin/rails -v とすれば、
その Rails アプリで使うべきバージョンの rails が使えます。
前章で準備ができたので、
ここから実際のコードを書いていきます。
Rails は MVCモデルを採用しています。
個々にファイルを作成していってもいいのですが、
Scaffold を使えば、簡単に自動生成できます。
個人の感想で言うと、
実用に耐えるかと言われると微妙に思えるのですが、
ベースを Scaffold で作ってから修正していくのも良いかと。
書式は
rails generate scaffold 名前 [カラム名:型[:index]..] [オプション]
です。
詳細な仕様は Rails ドキュメント を参照してください。
ユーザー(User)で名前(name)を使いたいなら、
ruby bin/rails generate scaffold User name:string
ruby bin/rails db:migrate
とすれば OK です。
rails db:migrate
はデータベースの生成を実行するコマンドです。
別章で説明します。
サンプルコードでは、
ruby bin/rails generate scaffold User enabled:boolean name:string is_admin:boolean is_librarian:boolean
ruby bin/rails generate scaffold Floor enabled:boolean name:string
ruby bin/rails generate scaffold Cabinet enabled:boolean name:string floor:references
ruby bin/rails generate scaffold Step enabled:boolean name:string cabinet:references
ruby bin/rails generate scaffold Category enabled:boolean name:string
ruby bin/rails generate scaffold Book enabled:boolean name:string isbn:string category:references step:references memo:string
ruby bin/rails generate scaffold Log status:integer book:references user:references
ruby bin/rails db:migrate
| 型 | 説明 |
|---|---|
| string | 文字 |
| boolean | 論理 (true/false) |
| integer | 整数 |
| references | 別章で説明 |
全てファイルの新規追加なので、実際にコマンドを実行して現物を見たほうが良いですが、
リポジトリ的には、
https://github.com/Bonv-dev/book_mgmt/commit/8464093
に差分があります。