この方法でスキーマを埋め込むことはできません。これらの子ドキュメントが完全なドキュメントと混同されるという理由で、次のバグスレッドを参照してください。
過去にこのサポートを追加しなかった理由はb/cであり、これにより、すべてのプリフックが疑似子ドキュメントに対して同じ方法で実行されるかどうか疑問に思うだけでなく、save()を呼び出すことができることを意味します。あの子。
ここでの答えは、スキーマではなく、定義だけを共有することです。
var userdef = { name: String };
var UserSchema = new Schema(userdef);
var BlogPostSchema = new Schema({author: userdef});
これにより、実際にスキーマをネストせずに、ネストされたユーザーオブジェクトが作成されます。