AFTER CODEBASE School 1week

今週からRubyの勉強を始めた。Slimアプリ修正も少しづつ進めるなど。(今週の学習時間25時間)

f:id:shimabukuromeg:20180325214851p:plain

AFTER CODEBASE School 1week

Ruby 環境構築

$ brew update
$ brew install rbenv ruby-build
$ brew list
$ echo 'eval "$(rbenv init -)"' >> ~/.zshrc
$ source ~/.zshrc
$ rbenv --version
$ rbenv install -l
$ rbenv version
$ rbenv versions
$ rbenv install 2.5.0
$ rbenv versions
$ rbenv global 2.5.0
$ rbenv version
$ ruby -v
$ gem install bundler
$ bundler -v
  • local, global コマンドでバージョンを固定する
    • ルート(/Users/username) に local 設定しちゃうとlocalだけどglobalっぽい動きになるので注意
  • versionsで手元に入っているRubyのバージョンを確認出来る
  • それぞれのバージョンごとにgemをインストールするのでバージョンを変えると再度インストールする必要がある
  • ~/.rbenv フォルダにrubyのruntimeとgemがインストールされる
    • プロジェクト毎にインストールするgemの場所を指定したい場合は bundle install --path=vendor/bundle とする
    • こうすることで、全体(global)に影響しないようにできる
  • bundle install でGemfileに書いてあるgemがインストールされる
  • gem の依存関係もチェックしてくれてインストールされる。(依存関係が考慮されたものはGemfile.lock)
  • あと、rbnev install ができない問題解決せず。。。

qiita.com

Sinatra 環境構築

  • コマンド(以下二点がポイントでrubymine使いやすくなるらしい)
    • rubyのバージョンをローカルで指定する
    • gemのインストール先を --path=vendor/bundle で指定する
$ cd ~/Development/ruby/sinatra-sample
$ rbenv local 2.5.0
$ bundle init
$ vi Gemfile
$ bundle install --path=vendor/bundle
$ vi app.rb
$ bundle exec ruby app.rb
  • Gemfile
source 'https://rubygems.org'

gem 'sinatra', github: 'sinatra/sinatra'
gem 'sinatra-contrib'
  • app.rb
require 'sinatra'
require 'sinatra/reloader' if development?

get '/' do
  'Hello world!'
end

Sinatra

Sinatra dotinstall

とりあずドットインストール sinatra入門 チュートリアルはやってみた。データの登録とか削除とかざっくりできるようになった。もう少しやってみて、細かいところ理解できるようにする。

  • 「@」から始まってる変数は特殊な変数。ビューファイルでも使える
  • 共通したViewの記述を views/layout.erb で記述できる
  • yieldとは?
  • ざっくり色々わかってない(RubyMine 定義元に飛ぶやつ、いまいち使いこなせてない)
    • ActiveRecord::Base.establish_connection
    • use Rack::Session::Cookie,secret: "thisissomethingsecret"
    • use Rack::Csrf, raise: true

github.com

Rails 環境構築

$ cd ~/Development/ruby/rails-sample
$ rbenv local 2.5.0
$ gem install rails
$ rails
$ rails new --skip-bundle sample
$ cd sample
$ bundle install --path=vendor/bundle
$ bin/rails server
※ $ bundle exec rails server

一番小さなRailsアプリづくり

その他 メモ

RubyMineの設定とか

qiita.com

まとめ

  • 今週からrubyやってる。「文系から半年でRubySinatra, Rails)を学んだら人生変わった」をやってみようと思ってて、目標はここ300時間ぐらいで、Rails かけるようになりたい(スタートラインに立てるようになりた)。

speakerdeck.com