2015-02-24 44 views
0

我一直在Devise上工作,並試圖找到一種方法將更多的數據庫屬性添加到devise的用戶表中。但它似乎只支持emailpassword字段。Rails Devise - 添加更多屬性

是否可以向設計添加更多字段,因此設計可以驗證並將其保存到create,update調用的用戶表中。

回答

1

是的。檢查他們的文檔。 https://github.com/plataformatec/devise 並在頁面中搜索「強參數」,這些參數應該主要向您顯示您要查找的內容。 一個例子:

class ApplicationController < ActionController::Base 
def configure_permitted_parameters 
     devise_parameter_sanitizer.for(:sign_up) { |u| u.permit({ roles: [] }, :email, :password, :password_confirmation, :first_name, :last_name, :gender, :avatar, :latitude, :longitude) } 
     devise_parameter_sanitizer.for(:account_update) { |u| u.permit({ roles: [] }, :email, :password, :password_confirmation, :current_password, :first_name, :last_name, :age, :about_me, :gender, :avatar, :latitude, :longitude) } 
    end 
+1

謝謝,張貼這個問題,我更多地瞭解在此之後一個:) – User16119012 2015-02-27 08:17:21

1

是你可以像下面我爲first_namelast_name

class RegistrationsController < Devise::RegistrationsController 

    private 

    def sign_up_params 
    params.require(:user).permit(:first_name, :last_name, :email, :password, :password_confirmation) 
    end 

    def account_update_params 
    params.require(:user).permit(:first_name, :last_name, :email, :password, :password_confirmation, :current_password) 
    end 
end