Update `User` Attribute ohne Passwort

Gerade jetzt, Benutzer können auch Bearbeiten, Ihre Attribute, die zimmerreserviereung, ohne das Sie Ihr Kennwort eingeben, weil meine Validierungen sind wie folgt eingerichtet:

validates :password, :presence =>true, :confirmation => true, :length => { :within => 6..40 }, :on => :create
validates :password, :confirmation => true, :length => { :within => 6..40 }, :on => :update, :unless => lambda{ |user| user.password.blank? } 

Jedoch, nachdem ein Benutzer tut dies, Ihr Passwort ist gelöscht - update_attributes zu aktualisieren ist, Ihr Passwort zu "". Hier ist mein update definition:

def update

    if @user.update_attributes(params[:user])
        flash[:success] = "Edit Successful."
        redirect_to @user
    else
        @title = "Edit user"
        render 'edit'
    end
end

Habe ich auch versucht, mit einer anderen definition, die verwendet update_attribute statt:

def save_ff
    @user = User.find(params[:id])
    @user.update_attribute(:course1, params[:user][:course1] )
    @user.update_attribute(:course2, params[:user][:course2] )
    @user.update_attribute(:course3, params[:user][:course3] )
    @user.update_attribute(:course4, params[:user][:course4] )
    redirect_to @user 
end 

Aber aus irgendeinem Grund ist dies die gleiche Sache zu tun. Wie kann ich ein update für einige Benutzer-Attribute, die ohne das Kennwort zu ändern? Danke!

InformationsquelleAutor steffi2392 | 2011-08-16
Schreibe einen Kommentar