각도와 MongoDB와 함께 Breeze를 사용하고 있습니다.Breeze Mongo 각도 autoGeneratedKey 오류
각도 및 MongoDB에서 breeze가 작동하는지 확인하기 위해 필요한 모든 서비스와 스크립트가 포함되었습니다. 그러나
, 나는 서버에 다음과 같은 오류가 내 변경 내용을 저장하려고하면
var keyDataType = entityType.keyDataType;
if (keyDataType === "Guid") {
e._id = createGuid();
} else if (keyDataType == "MongoObjectId") {
// instead of omitting the _id and having mongo update it, we want to set it ourselves so that we can do
// fk fixup before going async
e._id = new ObjectID();
} else {
that._raiseError(new Error("ObjectIds and Guids are the only autoGenerated key types that Breeze currently supports, not: " + keyDataType));
return;
}
:이 오류는 mongobreeze 모듈의 mongoSaveHandler.js 파일에서 발생
ObjectIds and Guids are the only autoGenerated key types that Breeze currently supports, not: undefined
나는 내 물건의 ID가 몽고 ID인지 확인했다. ID :
function addVisit() {
addType({
name: 'Visit',
dataProperties: {
id: { type: DT.MongoObjectId },
pain: { type: ID },
paper: {type: ID},
consistency: {type: ID}
}
});
}
그러나 실제로 내가 기록 할 때 entityType 객체에는 keyDataType 속성이 없습니다.
오류를 제거하면 작동하도록 모든 것을 얻을 수 있습니다. 그런 다음 삽입 된 객체가 MongoDB에서 다음과 같이 보입니다.
{ id: 5350d4e704a02e1f04000000,
pain: 50,
consistency: 50,
date: Fri Apr 18 2014 08:31:51 GMT+0100 (WEST),
_id: 5350d4e7101b04a9560e660a },
의미있는 2 개의 ID가 있습니까?
나는 내가 좋은 반응을 얻을 데이터베이스 쿼리 할 때 :
[
{
"id": "535052f504a02e79c6000000",
"pain": 50,
"consistency": 50,
"_id": "535052f6f672174a4dffffd4"
},
{
"id": "5350d1bb04a02e4e56000000",
"pain": 50,
"consistency": 50,
"date": "2014-04-18T07:18:19.616Z",
"_id": "5350d1bb101b04a9560e6606"
},
{
"id": "5350d2c104a02e595c000000",
"pain": 50,
"consistency": 50,
"date": "2014-04-18T07:22:41.696Z",
"_id": "5350d2c1101b04a9560e6607"
},
]
을하지만 어떻게 든 바람이 제대로이 문제를 가져올 수 없습니다 내가이 순환 종속성을받을.
이 아이디의 이중와 함께 할 수있는 뭔가가 있을까?
첨부 이미지가 OK입니다. breeze의 모든 엔터티에는 entityAspect가 있습니다. EntityAspect는 차례대로 엔티티에 대한 참조를 가지고 있습니다. Breeze는 순환 참조와 잘 작동합니다. EntityAspect 문서를보십시오. http://www.breezejs.com/sites/all/apidocs/classes/EntityAspect.html –
흠, 볼 수 있지만 각도를 사용하여 표시하려고하면 순환 종속성 때문에 보간 오류가 발생합니다. – arnoutaertgeerts
각도 바인딩에 관해서 순환 참조가있는 객체를 처리 할 수 없습니다. breeze 엔티티에서 다른 javascript 객체로 원호 참조없이 투영을해야합니다. –