2016-03-22 67 views
0

アカウントパスワードパッケージと自動ログインパッケージを削除したカスタムログインフォームを使用するこのMeteorアプリケーションは、サーバー上でAccounts.createUserを使用してユーザーアカウントを作成します。ユーザーが作成したと流星Mongoの端末にdb.users.find({}).pretty()を確認されているにもかかわらず作成したユーザーアカウントがブラウザコンソールに表示されない

、ブラウザのコンソールでこのコマンドMeteor.users.find().fetch()は空の配列ブラウザのコンソールに戻りnull

[]

編集
Meteor.user()を与えます

編集2
Accouts.createUserを起動する手順は、次のとおりです。
テンプレートボタンイベントは、メソッドAを呼び出します。メソッドAは、サーバー上でユーザー名とパスワードをグローバルオブジェクトに格納し、メソッドBを呼び出し、次にサーバー側の関数を呼び出し、そのサーバー側の関数を呼び出し、Acounts.createUserを呼び出します。グローバルオブジェクト。

server.js

Meteor.publish('users', function() { 
    if (this.userId) { 
    return Meteor.users.find({_id: this.userId}); 
    } 
}); 

client.js

Meteor.subscribe('users'); 

これは正常ですか?もしそうなら、流星はどのブラウザの「セッション」がどのクライアントに属しているかを知っていますか?おかげ

答えて

0

Accounts.createUserのためのドキュメントを見ている:クライアントで

を、この機能は正常に完了した上で、新しく作成したユーザーとしてログインします。サーバー上では、新しく作成されたユーザーIDを返します。

したがって、サーバーからユーザーを作成すると、ユーザーは自動的にログインしません。ユーザーがログインしていない場合、ユーザーのユーザー文書は公開されません。クライアントから

  1. コールAccounts.createUser

    次の2つの選択肢があります。

  2. サーバーにアカウントを作成した後、ユーザーにログインするように依頼します。
関連する問題