2017-09-18 7 views
0

값 개체에 값을 설정하려고하지만 돛을 무시합니다.Sailsjs before 값 개체에 새 값을 추가하지 않습니다.

attributes: { 

    title: { 
     type: 'string', 
     required: true 
    }, 
    testAttr: { 
     type: 'integer' 
    } 
} 


beforeCreate: function (values, cb) { 

    values.testAttr = 1; 

    cb(); 
}, 

내 값은이 값이 상기 요청을 통해 전송되지 않기 때문에 그것이 beforeCreate 방법 들어갈 때 testAttr 값을 포함하지 않는 개체.

값 개체에 존재하지 않으면 추가/업데이트하지 않는 것처럼 보일 수 있습니다.

올바른 방법은 무엇입니까?

+0

사용중인 Sails 버전은 무엇입니까? – sgress454

+0

우리는 버전 0.12.11 – ChrisWorks

+0

흠을 사용합니다. 이걸 Sails v0.12.11에 재현 할 수 없습니다. 나는 sails-disk와 sails-postgresql 어댑터를 모두 시도했다. – sgress454

답변

0

나는 그것이 거의 맞았다 고 생각합니다. 콜백 cb에는 두 개의 인수 (하나의 오류 및 값 해시)가 필요합니다. 값을 전달하면됩니다.

beforeCreate: function (values, cb) { 
    values.testAttr = 1; 
    cb(null, values); 
}, 
+0

답장을 보내 주셔서 감사합니다. 실제로는 문서 [link] (http://sailsjs.com/documentation/concepts/models-and-orm/lifecycle-callbacks)에 따르지 않습니다. 나는 또한 당신이 제안한 것을 시도했으나 효과가 없었습니다. 또한 testAttr 특성을 설정 한 후에 전체 values ​​개체를 인쇄하려고 시도했지만 거기에 없기 때문에 완전히 무시됩니다. – ChrisWorks