[MONGODB] 어떻게 동적으로 몽구스 스키마를 만드는 방법?
MONGODB어떻게 동적으로 몽구스 스키마를 만드는 방법?
나는 MongoDB를하고 몽구스와 Node.js를에서 작동하는 응용 프로그램을 가지고있다. 내 응용 프로그램은 단순히 / 삭제 / 편집 폼 데이터를 전송하고, 나는 그런 몽구스 모델을 가지고 :
var mongoose = require('mongoose');
module.exports = mongoose.model('appForm', {
User_id : {type: String},
LogTime : {type: String},
feeds : [
{
Name: {type: String},
Text : {type: String},
}
]
});
그것은 잘 작동합니다!
지금, 나는 사용자가 구성하고 그 안에 텍스트를 입력하고 게시 할 필드 (또는 필드)를 추가 할 수 있도록 폼에 기능을 추가하고 싶습니다. 클라이언트 측에서 그 동적 기능을 생성하는 것은 문제가되지 않습니다하지만 내 mongoose.model가 제대로 구성되어야 함을 이해합니다. 내 질문은 : 어떻게 스키마를 몽구스 해당 변수 값 (동적으로 생성 된 폼 데이터 이름과 텍스트)을 추가하는 방법은 무엇입니까?
나는 엄격한 사용하는 것을 볼 수 : 거짓과 Schema.Types.Mixed이 좋습니다. 그러나, 나는 알아낼 수 없습니다 ... 나는 시도하는 것 :
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var feedSchema = new Schema({strict:false});
module.exports = mongoose.model('appForm', feedSchema);
모든 팁? 사전에 감사합니다!
해결법
-
==============================
1.스키마 생성자에 두 번째 매개 변수로 제공하여 기존의 스키마 정의에 잘못된 옵션 : 엄격한 적용 :
스키마 생성자에 두 번째 매개 변수로 제공하여 기존의 스키마 정의에 잘못된 옵션 : 엄격한 적용 :
var appFormSchema = new Schema({ User_id : {type: String}, LogTime : {type: String}, feeds : [new Schema({ Name: {type: String}, Text : {type: String} }, {strict: false}) ] }, {strict: false}); module.exports = mongoose.model('appForm', appFormSchema);
당신은 당신이 혼합 사용 할 수있는 사용자들은 완전히 스키마와 같은 피드를 마칠 경우 :
var appFormSchema = new Schema({ User_id : {type: String}, LogTime : {type: String}, feeds : [Schema.Types.Mixed] }, {strict: false}); module.exports = mongoose.model('appForm', appFormSchema);
from https://stackoverflow.com/questions/28166463/how-to-create-mongoose-schema-dynamically by cc-by-sa and MIT license
'MONGODB' 카테고리의 다른 글
[MONGODB] 어떻게하여 MongoDB에서 특정 문서의 배열 내에서 특정 포함 된 문서의 값을 업데이트하는? (0) | 2019.12.23 |
---|---|
[MONGODB] MongoDB를, 맵리 듀스 및 정렬 (0) | 2019.12.23 |
[MONGODB] ID가 아닌 필드와 몽구스 모델을 채 웁니다 (0) | 2019.12.23 |
[MONGODB] 어떻게 $ 프로젝트는 MongoDB의 집계에 문자열 값 OBJECTID? (0) | 2019.12.23 |
[MONGODB] 어떻게 기본 드라이버를 MongoDB를 nodejs에서 ObjectId가 문자열을 변환하는? (0) | 2019.12.23 |