13note.

なんか調べたりまとめたり感想言ったりする語彙力不足及び眠気と戦うブログ

ruby on rails

 

Ruby on rails の環境情報(2018/07/12時点)
Ruby 

ruby -v
ruby 2.3.6p384 (2017-12-14 revision 61254) [i386-linux-gnu]

Ruby on rails

rails -v
Rails 5.1.6

アプリケーションの作成

rails new sandbox-1 -T

-T オプション ⇒ テストコードを作成しない(標準のは使わないため…)


やりたいこと

  • twitterOauth認証でのログイン
  • ToDoリスト
  • タグでのタスク分類・検索
  • テスト駆動開発

タグ管理はacts-as-taggable-onを使う(ただしRails5だと挙動がおかしくなる場合もあるそうな)
参考: https://qiita.com/ShunjiKato/items/404dac7360ae22ae1ca2

ログイン認証はdeviceとtwitteroauth認証を使う。
参考: http://farma-11.hatenablog.com/entry/2018/01/03/212502
https://reviewlog.info/ruby-twitter-api/

あと度々参考にさせてもらっているところ…
http://maeharin.hatenablog.com/entry/20130212/rails_generate


モデル設計

  • タスク(ID・ユーザID・タイトル・詳細・作成日(デフォルト)・期限・ステータス(外部キー)
  • ステータス(ID・タイトル)
  • ユーザ(devise準拠)
  • タグ(acts-as-taggable-on準拠)

最低限、こんな感じ?


コントローラー設計

  • Task(scaffoldでいい)
    • new : 新規作成表示
    • create:新規作成
    • edit:編集画面表示
    • update:編集
    • show:詳細表示
    • destroy:削除
  • User
    • (devise準拠)

gem

gem 'devise'
gem 'acts-as-taggable-on'
gem 'omniauth-twitter'