流星のユーザーがログアウトしたとき、私はwww.foo.com/usernameAにアクセスすることができ、usernameAページが表示されますすべてのプロフィール情報が表示されます。私がwww.foo.com/usernameBでこれを行うと、同じことが起こります。これらはすべて素晴らしいです。流星勘定にユーザーがログインし、ユーザー名と同じアドレスを入力しようとすると、現在ログインしているユーザープロファイルページに引き続きルーティングされます。現在ログインしているユーザーは、Router.current()。params.usernameをハイジャックして、常に現在のパラメータにします。ここで 流星ユーザーがIronPortにログインしたときにRouter.current().params.usernameを別のプロファイルにルーティングしない
は私のコードの基礎である:routes.js
Router.route('/:username', {
template: 'userPubProfile',
onBeforeAction: function(){
var profileUserExists = Meteor.users.find({"profile.user-url" :
Router.current().params.username}).count();
if (profileUserExists == 0) {
this.render('404');
}
else {
this.next();
}
}
});
userPubProfile.js
Template.userPubProfile.helpers({
'userFirstName' : function(){
var getUser = Meteor.users.findOne({"profile.user-url" :
Router.current().params.username});
return getUser.profile['first-name'];
}
});
私の質問: 私は、ルーティング作業同じを作るにはどうすればよいです/:usernameパラメータを使用してルータに接続しようとすると、ユーザはログインまたはログアウトされますか?
戻って何が得られているのかを観察する前に、あなたのヘルパーで 'console.log'を試してみてください。 –
私はconsole.logをやった。問題は....流星ユーザーがログインしたURLに自動的にログインすると、ログインしているユーザー名にリダイレクトされます。例:ログインしていて、ユーザープロファイルがwww.website.com/の場合johnと入力してから、www.website.com/bobと入力します。ルータは自動的にBobをwww.website.com/johnに誘導します...ログイン時にリダイレクトされるのはなぜですか? – jremi