User.select(:name).where(blabla..)
真好!
应该每个人都是这么过来的把
估计烤错位置了,干嘛不在 cloudfoundry 里 gem install activerecord
Q1:ruby 类也是对象。
Q2:顶级作用域消息都发给一个特殊的对象。
说的不对,请指教。
在 railscasts-china 里第二篇讲#002 User Authentication 的时候(http://railscasts-china.com/episodes/user-authentication?view=comments),user model 的代码如下:
class User < ActiveRecord::Base
validates :login, :presence => true
def password
@password
end
def password=(pass)
return unless pass
@password = pass
generate_password(pass)
end
此处用动词形式 (authenticate) 更加合适,特此说明一下。感谢 Chen Kai 同学的提醒。
def self.authentication(login, password)
user = User.find_by_login(login)
if user && Digest::SHA256.hexdigest(password + user.salt) == user.hashed_password
return user
end
false
end
private
def generate_password(pass)
salt = Array.new(10){rand(1024).to_s(36)}.join
self.salt, self.hashed_password =
salt, Digest::SHA256.hexdigest(pass + salt)
end
想问下在generate_password
方法里,self.salt = salt
,这里一定要用self.salt
才行吗?为什么不能直接用@salt = salt
?
签到
class Module
include YourModule
end
thanks
cool!!!!
#1 楼 @yesmeck #5 楼 @newnewnew 不是完全等同的。
一般都是 cookie 吧毕竟默认的
好人一生平安。[email protected]
是有点。
瘦死的骆驼比马大