devise ajax email sign_in & sign_up
首先要说明一下,在ruby中呼叫方法的时候常常适当的省略小括号。
如
def set_girl_name(name)
puts "hi, #{name}"
end
set_girl_name("abbey") 等同于 set_girl_name "abbey"
Ruby并没有「属性」(property/attribute)这样的东西。
class Girl
def initialize(age)
@age = age
end
end
litter_girl = Girl.new(18)
litter_girl.age
其实是在呼叫Gril
的age
这个方法,如果没有定义直接抛出
undefined method 'age'
。如果要进行setterlitter_girl.age = 19
,其实Ruby是在寻找
age=
这个方法。
class Girl
def initialize(age)
@age = age
end
def age
@age
end
def age=(new_age)
@age = new_age
end
end
litter_girl = Girl.new(18)
class Girl
def initialize(age)
@age = age
end
attr_accessor :name
end
litter_girl = Girl.new(18)
說穿了 Ruby 一堆東西都是方法!
你以為 1 + 2 是簡單的數學運算嗎? 其實它是 1.+(2),它是對數字物件 1 送了一個 + 的訊息,並且把數字物件 2 當做參數傳給它
https://ruby-china.org/topics/24631