ロイの奮闘記録

PdMをやってるロイの日記です。人のつながりを増やしたいと思いながら、社会と奮闘しています

#37 7/27 2周目 4章 Rails風味のRuby

2周目 4章 Rails風味のRuby 

 

ヘルパー

application_helper.rbにfull_titleヘルパーを作り、

application.html.erbで使用

    <title><%= full_title(yield(:title)) %></title>

 

irbとは

Interactive Rubyの略で、対話的にプログラムを実行することができます

ruby の式を標準入力から簡単に入力/実行するためのツールです。

 

組み込みクラスの変更

Rubyでは普段継承元となっているクラスStringも書き換えが可能

ただ真に正当な理由がない限り

み込みクラスにメソッドを追加することは無作法であると考えられている

 

アクセサー

  attr_accessor :name, :email

インスタンス変数@nameとインスタンス変数@emailにアクセスするためのメソッドが用意されます。

 

initializeメソッド

やや特殊メソッド。

このメソッドをクラス内に記述した場合には、

オブジェクトが作成される時に自動的に呼び出されます。

 

チュートリアルだと、

def initialize(attributes = {})
    @name  = attributes[:name]
    @email = attributes[:email]
  end

名前やメールアドレスのないユーザーを作ることができます。

 

マスアサイメントという技法

initializeメソッドにハッシュを渡すことで、属性が定義済みの他のユーザを作成することができます。

user = User.new(name: "Michael Hartl", email: "mhartl@example.com")

でいきなり引数を入れることで、作成時から属性が入ってるってこと。