Tout comme un avertissement, je suis nouveau sur les rails et la programmation en général alors s'excuser pour malentendu quelque chose d'évident.Authlogic Aide! Enregistrement d'un nouvel utilisateur lorsqu'il est actuellement connecté en tant qu'utilisateur ne fonctionne pas
J'ai Authlogic avec l'activation et l'exécution. Donc, pour mon site, je voudrais que mes utilisateurs connectés puissent enregistrer d'autres utilisateurs. Le nouvel utilisateur sélectionne son identifiant et son mot de passe via l'e-mail d'activation, mais l'utilisateur existant doit les indiquer par e-mail, par poste et par quelques autres attributs. Je veux que cela soit fait par l'utilisateur existant.
Le problème que je rencontre, si je suis connecté, puis essayez de créer un nouvel utilisateur, il essaie juste de mettre à jour l'utilisateur existant et ne crée pas un nouveau. Je ne suis pas sûr s'il y a un moyen de résoudre ce problème en commençant une autre session ??? Si cela est juste/possible, je ne saurais pas comment le mettre en œuvre.
Je réalise sans connaître complètement mon application, il peut être difficile d'y répondre, mais cela semble-t-il même être la bonne façon de faire? Est-ce que j'ai râté quelque chose?
utilisateurs Contrôleur:
class UsersController < ApplicationController
before_filter :require_no_user, :only => [:new, :create]
before_filter :require_user, :only => [:show, :edit, :update]
def new
@user = User.new
end
def create
@user = User.new
if @user.signup!(params)
@user.deliver_activation_instructions!
flash[:notice] = "Your account has been created. Please check your e-mail for your account activation instructions!"
redirect_to profile_url
else
render :action => :new
end
end
def show
@user = @current_user
end
def edit
@user = @current_user
end
def update
@user = @current_user # makes our views "cleaner" and more consistent
if @user.update_attributes(params[:user])
flash[:notice] = "Account updated!"
redirect_to profile_url
else
render :action => :edit
end
end
end
Mon User_Session Controller:
class UserSessionsController < ApplicationController
before_filter :require_no_user, :only => [:new, :create]
before_filter :require_user, :only => :destroy
def new
@user_session = UserSession.new
end
def create
@user_session = UserSession.new(params[:user_session])
if @user_session.save
flash[:notice] = "Login successful!"
if @user_session.user.position == 'Battalion Commander' : redirect_to battalion_path(@user_session.user.battalion_id)
else
end
else
render :action => :new
end
end
def destroy
current_user_session.destroy
flash[:notice] = "Logout successful!"
redirect_back_or_default new_user_session_url
end
end
Merci, j'ai modifié mon message avec le code. Le nify_authentication ressemble à un grand bijou que je voudrais utiliser à l'avenir, mais je pense qu'il fait juste ce que j'ai déjà en cours d'exécution. Je peux inscrire un utilisateur et le connecter très bien. Cependant, ce que j'essaie de faire, c'est d'enregistrer un AUTRE utilisateur quand un utilisateur est connecté. Cela ne crée pas ce deuxième utilisateur parce qu'il veut juste mettre à jour celui qui est actuellement connecté. – looloobs
Je ne vois pas vraiment l'intérêt de laisser les utilisateurs en enregistrent d'autres. C'est trop compliqué pour très peu de gains. Une chose que je peux penser est de créer des invitations que les utilisateurs peuvent envoyer à d'autres utilisateurs. Cette méthode ne laisse pas l'utilisateur actuel choisir le nom d'utilisateur et le laisser passer, mais j'imagine que les gens n'aiment pas le nom d'utilisateur et passent déjà choisi pour eux. –
Oui J'ai aussi pensé à la route des invitations, je n'ai pas l'intention de laisser quelqu'un d'autre choisir le nom d'utilisateur ou le mot de passe, ce qui est fait dans la partie activation. Je dois avoir la possibilité pour une personne qui est un utilisateur de mettre d'autres utilisateurs dans son groupe spécifié et par position, ces critères doivent être mis en place par cet utilisateur existant.Je me rends compte que j'ai probablement besoin de regarder dans les rôles aussi, mais cela ne semble pas résoudre mon problème d'ajouter un autre utilisateur pendant que l'on est connecté. Merci. – looloobs