【開発日誌/Ruby】モデルを作成
移転しました。
約5秒後に自動的にリダイレクトします。
前回はアプリの名前を決めて、rails newをするところまでやりました。
m-uta.hatenablog.com
今回はモデルを作成していきたいと思います。
モデルはMVCのMですが、ようするにDTOとBeanをまとめて作る感じですね。
たぶんもっと他の事も考慮しなきゃいけないんでしょうけど、
とりあえず今の知識ではそういう感覚。
っと、その前にちょっとGemfileを修正しておきましょう。
(【凡例】-:削除行、+:追加行)
# therubyracerのコメントを外す。(とりあえず外す^^;) gem 'therubyracer', platforms: :ruby
個別にはほんとに必要かどうかを理解できてないけど。。。
Gemfileを修正したらbundle installを忘れずに。
さて、話が逸れちゃいましたが、ここからはモデル定義をやっていきます。
最終的にはいろんなものの記録を扱う予定ですが、最初から全部とか無理なので、、、
まずは読書記録から実装しましょうね。
ということで、「書籍」モデルを考えます。
楽天APIを使って書籍情報を取ってきたいと思っているので、
ここの出力情報から必要なもの+αで構成しましょう。
項目名(日本語) | 項目名 | データ型 | 備考 |
---|---|---|---|
書籍タイトル | tite | String | 楽天APIで取得可 |
書籍タイトルカナ | titleKana | String | 楽天APIで取得可 |
書籍サブタイトル | subTitle | String | 楽天APIで取得可 |
書籍サブタイトルカナ | subTitleKana | String | 楽天APIで取得可 |
シリーズ名 | seriesName | String | 楽天APIで取得可 |
シリーズ名 カナ | seriesNameKana | String | 楽天APIで取得可 |
著者名 | author | String | 楽天APIで取得可 |
著者名カナ | authorKana | String | 楽天APIで取得可 |
出版社名 | publisherName | String | 楽天APIで取得可 |
書籍のサイズ | size | String | 楽天APIで取得可 |
ISBNコード | isbn | String | 楽天APIで取得可 |
商品説明文 | itemCaption | String | 楽天APIで取得可 |
発売日 | salesDate | String | 楽天APIで取得可 |
商品URL | itemUrl | String | 楽天APIで取得可 |
アフィリエイトURL | affiliateUrl | String | 楽天APIで取得可 |
商品画像URL(64x64) | smallImageUrl | String | 楽天APIで取得可 |
商品画像URL(128x128) | mediumImageUrl | String | 楽天APIで取得可 |
商品画像URL(200x200) | largeImageUrl | String | 楽天APIで取得可 |
購入日 | purchaseDate | Date | |
読了日 | finishReadingDate | Date | |
評価 | evaluation | Integer | |
メモ | memo | Text | |
カテゴリー | category | String | |
タグ | tags | String |
こんなところですかね?
あとは、これを実際に作成するにはrails generate(g) modelコマンドを実行します。
rails g model book title:string titleKana:string ...
使用可能なデータ型はこのあたりを参考に。
www.rubylife.jp
今回はここまで。
(。・ω・)ノシ