チュートリアルを真似てみた
まずはRuby on Railsのチュートリアルを真似る。
がいいのだけど、表示をするだけのページなんだよね。
スクレイピング
先月Rubyで作ったスクレイピングの登録内容の表示をRuby on Railsでするって言うのが課題。
チュートリアルのまず
AWSはそのままでいいとしてRails newを実行。
rails 5.1.4 new scraping_app
で、どうする?
構成としては、トップページでスクレイピングの検索をして登録して表示ってことで、2画面構成。
まずは・・・表示画面から作ることに。
その前に・・・チュートリアルのGemfileをコピペして
bundle install
でもね。チュートリアルの1章見ながらやってるのに、Gemfileは最終型なわけで。実はうまくいかない。
なぜなら既に
group :production do
gem 'pg', '0.20.0'
end
入れてるし。
ってことで
bundle install --without production
にする。
2章を見て作ったほうがいいのかもしれない。
Bitbucketにscraping_app
でリポジトリを作る。
git init git add -A git commit -m "Initialize repojitory"
リモートリポジトリにプッシュ!!
git remote add origin git@bitbucket.org:
/scraping_app.git
git push -u origin -all
この状態でブランチを作成しました。
Herokuをこの場で設定した方が良かったのか・・・
のちのち大変な悲劇に見舞われました。
git branch -b XXXX
XXXXを個人で作成するときにはどうするだろう?
仕事でする場合はチケット番号とかにすると思うんですけどね。
で、私は日付にしました。
まずしたこと。
表示画面用のコントローラを生成しました。
rails generate controller scrape_page
viewsのscrape_pagesに表示用のページを追加。
views/scrape_pages/reading.html.erb
この状態で多分、routes.rb
に追加。
Rails.application.routes.draw do
root 'scrape_pages#home'
get '/reading', to: 'scrape_pages#reading'
end
ってことで。
html
を作り込みましょう。
home.html.erb
<% provide(:title, "Home") %>
<h1>タグ検索</h1>
reading.html.erb
<% provide(:title, "Reading") %>
<h1>プロフィール情報</h1>
ってことで。この部分までで次はコントローラ確認。
class ScrapePagesController < ApplicationController
def home
end
def reading
end
end
ここはこんな感じで。
まずはタイトル表示のテストを書いてみた。この辺はチュートリアルの3章の静的ページの調整のまま。
require 'test_helper'
class ScrapePagesControllerTest < ActionDispatch::IntegrationTest
def setup
@base_title = "Scraping App"
end
test "should get home" do
get root_path
assert_response :success
assert_select "title", "Home | #{@base_title}"
endtest "should get reading" do
get reading_path
assert_response :success
assert_select "title", "Reading | #{@base_title}"
end
end
まずはここまででいっかなって感じで一度コミットすることに。
git add -A
git commit -m "first commit"
マスターにブランチを変更
git checkout master
git merge XXXX
ここでローカルサーバーで確認して終わりではないね・・・
git push
のタイミングってどんな感じなんだろう?
ここでしてみたけど。