アカウントベースパッケージのコードを直接
Meteor.users = new Mongo.Collection("users", { // line 141
_preventAutopublish: true,
connection: Meteor.isClient ? Accounts.connection : Meteor.connection
});
Accounts.connection
上記で設定されていますが、明示的にではありません サポート:
// ~ line 118
if (Meteor.isClient
....
if (typeof __meteor_runtime_config__ !== "undefined" &&
__meteor_runtime_config__.ACCOUNTS_CONNECTION_URL) {
// Temporary, internal hook to allow the server to point the client
// to a different authentication server. This is for a very
// particular use case that comes up when implementing a oauth
// server. Unsupported and may go away at any point in time.
//
// We will eventually provide a general way to use account-base
// against any DDP connection, not just one special one.
Accounts.connection = DDP.connect(
__meteor_runtime_config__.ACCOUNTS_CONNECTION_URL)
}
}
ただし、$ MONGO_URL環境変数(アカウントパッケージで使用されるデフォルトの接続を設定すると思われます)を設定することで、データベースを使用できるようになりました。
1つのターミナルウィンドウで、ポート27017でmongoを開始しました
> mongod
別のウィンドウで、MONGO_URLを設定し、適切なパッケージを追加してから、meteorを開始しました:
> export MONGO_URL=mongodb://localhost:27017/test
> meteor add accounts-base
> meteor add accounts-password
> meteor
そして最後に、ブラウザコンソールでアカウントを作成しました:
> Accounts.createUser({username: 'me', password: 'guest'});
次に、test
に接続しました 私のmongoインスタンスのデータベース:
> mongo
MongoDB shell version: 3.0.1
connecting to: test
> db.users.find()
{ "_id" : "L3EDrS8FnRymDLhPp", ... "username" : "me" }
要するに、私はあなたが3つのそれほど素晴らしいオプションを持っていないと思います:
-
MONGO_URL
を使用します 環境変数(おそらく最良のオプション) - アカウントベースパッケージをハックして、やりたいことを実行します
- サポートされていない
ACCOUNTS_CONNECTION_URL
を試してみてください 変数。「いつでもなくなる可能性があります」