2011-10-02 89 views
0

我想創建密碼保護模型。例如在博客上張貼。我想將這個密碼存儲在數據庫中。如果用戶想看到受密碼保護的帖子,他需要寫這個密碼。如果數據庫中沒有密碼,每個人都可以看到這篇文章,每篇文章都可以擁有自己的通行證。我如何在RoR中創建這樣的內容?我RoR - 密碼保護模型

我只找到基本的HTTP認證:

before_filter :authenticate 

#protected 

def authenticate 
    authenticate_or_request_with_http_basic do |username, password| 
    username == "foo" && password == "bar" 
    end 
end 

,但有可能是更好的解決這個?你有什麼想法?

回答

2

是這樣的嗎?

def show 
    @post = Post.find(...) 

    if params[:post][:password].nil? 
    # Show a form with a password asked 
    elsif params[:post][:password] == @post.password 
    # Show post 
    else 
    flash[:error] = "Bad password" 
    # Render password form 
    end 
end 
+0

請記住,您應該始終(!)加密存儲在數據庫中的任何密碼。最好用bcrypt。 –

+0

當然:)我只是給一個簡單的骨架。 – Cydonia7