Breeze를 사용하여 SaveChanges를 사용하여 저장하는 경우 필수 필드가있는 경우 간단한 업데이트를 수행 할 때 오류가 발생합니다.Breeze : 저장시 유효성 검사 오류
예를 들어
내가 이메일 필드가 필요하지 않은 이름을 가진 사용자의 테이블 및 이메일 필드가 있습니다.
나는 사용자 이름의 목록을 표시 할 수 있습니다 (하지만 이메일을 표시하지 않음)디스플레이 작동하지만라는 결코 극복을 막아
- 나는
인해 저장하지
자바 스크립트 유효성 검사 오류 유효성 검사 오류 : '전자 메일'이 필요합니다.그러나이 필드는 변경된 입력란에 간단한 업데이트를 생성해야하며 전자 메일로는 아무것도 수행하지 않아야합니다. 난 그냥 목록에
어떤 아이디어
HTML이
<a href="#" data-bind="click: save">Save</a>
<ul data-bind="foreach: modules">
<li >
<form>
<input type="checkbox" data-bind="checked: IsRunning" />
<input type="text" data-bind="value: ModuleName, css: { done: IsRunning }" />
</form>
</li>
</ul>
같은 외모와는 부분이 저장 뷰 모델을 1 항목을 변경하면
이상하게도 나는 오류가 발생하지 않습니다
function saveChanges() {
if (manager.hasChanges()) {
manager.saveChanges()
.then(saveSucceeded)
.fail(saveFailed);
} else {
logger.info("Nothing to save");
};
}
function saveSucceeded(saveResult) {
logger.success("# of Modules saved = " + saveResult.entities.length);
logger.log(saveResult);
}
function saveFailed(error) {
var reason = error.message;
var detail = error.detail;
if (reason === "Validation error") {
handleSaveValidationError(error);
return;
}
if (detail && detail.ExceptionType.indexOf('OptimisticConcurrencyException') !== -1) {
// Concurrency error
reason =
"Another user, perhaps the server, may have deleted one or all of the todos.";
manager.rejectChanges(); // DEMO ONLY: discard all pending changes
}
logger.error(error,
"Failed to save changes. " + reason +
" You may have to restart the app.");
};
function handleSaveValidationError(error) {
var message = "Not saved due to validation error";
try { // fish out the first error
var firstErr = error.entitiesWithErrors[0].entityAspect.getValidationErrors()[0];
message += ": " + firstErr.errorMessage;
} catch (e) { /* eat it for now */ }
logger.error(message);
}
아래 마이크
,
감사합니다. 미안 해요. 제 질문은 확실하지 않았습니다. 이메일은 DB에 필요하지만 애플리케이션에 표시되거나 사용되지 않습니다. 이제 유효성 검사가 진행되는 중이므로 유효성 검사를 해제하여 (현재는) 해결했습니다. 그러나 이상한 점은 이메일 필드에 값이 있다는 것입니다.하지만 사용자에게 표시되지 않으므로 유효성 검사 오류가 발생해야합니까? – Mike
breeze는 UI에서 렌더링하는 것을 실제로 알지 못합니다. 모델에 대해서만 알고 있습니다. 속성이 메타 데이터에 있고 필수 속성 인 경우 기본적으로 유효성이 검사됩니다. 아이디어는 db에 있다고해서 그것이 유효 함을 의미하지는 않습니다. 그러나 속성이 필요하지 않은 경우 속성을 모델에서 제외 할 수 있습니다. 이게 말이 돼? –
귀하의 의견을 다시 한 번 말씀 드리지만, 실제로 유효성 검사가 잘못되었다거나, 데이터가 포함되어 있어도 필요한 유효성 검사 오류가보고되거나 유효성 검사에서 다른 오류가보고되고 있습니까? –