Chromeの要素を検証で見てみると、scaffold.cssのa要素が効いてるみたい。調べてみると、bootstrapのリンクとかボタンの要素の文字の色が、scaffold.cssによって効かなくなることがあるみたい。scaffold.css.scssのa要素のところをひと通りコメントアウトしておく。}}*/ちゃんと表示されるようになった。route.rbを編集して、この画面をrootに指定する。'home#index'これでlocalhost:3000/はhome/indexが表示されるようになる。ログイン後はツイート一覧を表示したいのでcontroller/home_controllers.rbを編集する。これでログインするとrootはtweetに飛ばされる。逆にログインしていないとhome/indexに飛ばされるようにしたい。tweet_controller.rbも編集する。privateのcheck_userメソッドを作成し、before_actionで実行する。これでログインしていないユーザは強制的にホーム画面にリダイレクトされる。5rails_configの導入コメントを残すOmniauthを導入した時に、TwitterのAPIキーをdevise.rbに記述している。このままGithubにPushできないので、.gitignoreに追記している。これを定数のようなもので置き換えたい。調べてみると、rails_configってGemが定番らしいので導入してみる。installインストールする。rails_config:installsettings.local.ymlに環境変数を記述する。twitter_access_secretconfig/initializers/devise.rbを編集。'popup'end.gitignoreからdevise.rbを除外しておく。動作確認をしてみても問題なかったのでOK。4devise+OmniAuthでTwitter認証コメントを残す今のままではユーザー関係なく、アップロードされたツイートがすべて参照できてしまう。そこでユーザ認証機能を追加して、ユーザ自身がアップロードしたツイートのみを表示できるようにしたい。ユーザ認証はdeviseというライブラリが定番らしい。Twitter認証を行うにはOmniAuthを使うのが定番らしい。これらを導入してみようと思う。Gemfileを編集する。installを行う。installdeviseのインストール。devise:install認証用モデルUserを作成する。usermigrationファイルを編集しておく。TrackableとOmniauthableがあればいいみたいなので、不要な箇所は削除。uidにindexを張る。endendこれでdb:migrateを行う。APIのtokenをconfiginitialize/devise.rbに追記します。'popup'endtwitterからのコールバックのためのルーティングを設定する。サインイン後、サインアウト後にrootに飛ばされるため、rootをひとまず設定しておく。endコールバック用のコントローラを作成する。登録済みのユーザの場合は認証、登録済みでない場合はUsersテーブルに登録を行ってくれるはず。endend登録済みかどうかのチェックをUserモデル内に定義する。</div>実行画面はこんな感じ。ログインボタンが表示されている。ログインボタンを押すとおなじみの認証画面。認証を行うと、ログイン成功のメッセージが表示される。Usersテーブルを確認すると、ちゃんと追加されていた。3kaminariでページネーションコメントを残す1万件のツイートを表示するのに時間がかかりすぎてしまうので、ページネータというのを導入してみる。kaminariというのが定番らしい。Gemfileを編集。'kaminari'インストールする。installkaminariのconfigファイルを生成する。kaminari:configconfigファイルを編集して表示件数を100件ごとにしておく。configration/initializers/kaminari_config.rbを編集。100controlerのインスタンス変数をセットするところを編集する。end&#91;/bash&#93;viewファイルも編集する。テーブルの後ろにリンクを表示するためのメソッドを追加。%>これでこんな感じに。表示時間も気にならないぐらいに短縮された。kaminariをBootstrapに対応させる。Bootstrap用のViewを作成。bootstrapそれっぽくなったで。2CSVの取り込みコメントを残す前回の続きで、ツイートCSVファイルの読み込み機能を実装してみる。ActiveRecordを使って、DBにツイートを取り込む。Routes.rbの修正。diffで編集箇所を見てみる。使ったけど、これは便利だな。endimport_csv_newとimport_csvというメッソドへのルーティングが追加される。tweets#destroytweets_controller.rbにアクションを追記する。"CSVファイルの読み込みに失敗しました。import_csv_newは取り込み用のフォームを設置する。import_csvで受け取ったCSVを取り込む処理を行い、処理が終わるとツイート一覧のページに遷移させる。Views/tweets/配下に、import_csv_newに対応するViewファイルを作成する。%>import_csvをTweetモデルに作成する。読み込む前に古いツイートをすべて削除する。Bootstrapが活用できていないような...ひとまずアップロードしてみる。こんなかんじで一覧が表示される。Bootstrapのclassを適用してみる。この1万件の全ツイートを表示するのに時間がかかるみたい。1導入コメントを残す最近Railsを勉強中。勉強がてら思いついたアプリを作ってみることにした。この前Twitterのアカウントを移行した時に取得した、全ツイートのCSVファイルがある。これを取り込んで、検索機能をつけたり、年月ごとに参照できるようにしたい。これtwilogでできるんだろうけど、僕の知る限り公開アカウントじゃないと使えなかったので、まずはローカル環境で過去のツイートを参照できるようにしてみよう。プロジェクト名はtwi○○みたいなのが良かったので、とりあえず辞書引いたら出てきたtwiceにしてプロジェクトを作成する。