5 Stimmen

Wie man ein Profil nach der Benutzerregistrierung mit Rails3 & Devise erstellt

Ich mache eine einfache Benutzer mit Profil Anwendung. Der Benutzer registriert sich und wird automatisch eingeloggt. Funktioniert so weit gut. Jetzt würde ich gerne nach einer erfolgreichen Registrierung ein Profil erstellen und den Benutzer zu seinem Profil weiterleiten.

Ich habe ein Benutzermodell und einen Controller. Devise hat auch die Registrierungs-Controller. Ich habe das Gem installiert. Ich kopierte die Devise Dateien kopiert und ich plane, die create-Aktion zu überschreiben.

Erstens, was auch immer ich in registrations_controller.rb bearbeite, nichts ändert sich.

class Devise::RegistrationsController < ApplicationController
 prepend_before_filter :require_no_authentication, :only =>
[ :new, :create, :cancel ]
 prepend_before_filter :authenticate_scope!, :only =>
[:edit, :update, :destroy]
 include Devise::Controllers::InternalHelpers

Zweitens: Wie kann der Schritt der Profilerstellung eingefügt werden?

def create
   build_resource

   if resource.save
     if resource.active?
       set_flash_message :notice, :signed_up
       sign_in_and_redirect(resource_name, resource)
     else
       set_flash_message :notice, :inactive_signed_up, :reason =>
resource.inactive_message.to_s
       expire_session_data_after_sign_in!
       redirect_to after_inactive_sign_up_path_for(resource)
     end
   else
     clean_up_passwords(resource)
     render_with_scope :new
   end
 end

Ich dachte daran, Folgendes hinzuzufügen

 current_user.create_profile under is resource.active?

Wie würdet ihr dieses Problem angehen?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X