제목에 따르면 과 관련된 문제가 있으며 ember-engines과 관련이 있다고 생각합니다.
기본적으로 내 문제는 ember-cp 유효성 검사를 사용하는 모델의 양식에 유효성 검사가 없다는 것입니다. 내 모델은 매우 간단합니다,ember-engines에서 ember-cp 유효성 검사와 관련된 문제
import Ember from 'ember';
import DS from 'ember-data';
import { validator , buildValidations } from 'ember-cp-validations';
const Validations = buildValidations(
{
name:[
validator('presence', true),
validator('ds-error'),
validator('length', {
min: 3,
max: 15,
message: 'The length must be between 3-15 character'
})
]
);
export default DS.Model.extend(Validations, {
numericId: Ember.computed('id', function()
{
"use strict";
return Number(this.get('id'));
}),
name: DS.attr('string'),
});
당신이 볼 수 있듯이, 그것은 내 응용 프로그램에 완벽하게 잘 작동 : 여기 내 모델입니다. 템플릿에 대한
, 나는 ember-bootstrap를 사용하고, 그것은 그 모양 :{{#bs-form formLayout="horizontal" model=myModel onSubmit=(action 'update') as |form|}}
<fieldset>
<legend>Configuration</legend>
{{form.element controlType="text" label=Name
placeholder=myName
property="name"}}
{{bs-button
defaultText=Submit
type="primary"
disabled=(v-get myModel 'isInvalid')
buttonType="submit"}}
</fieldset>
{{/bs-form}}
내 템플릿도 매우 간단합니다, 당신은 내 양식 나는 property="name"
를 호출 오전의 첫 번째 부분에있는 것을 볼 수 있습니다, 내 모델의 anme 속성을 정의하는 곳입니다.
예를 들어, name.length가 3 자 미만인 경우 메시지가 표시되지 않습니다.
disabled=(v-get myModel 'isInvalid')
을 추가 의무가 있으며 유효성 검사가 수행되지 않으면 내 버튼이 비활성화됩니다. 왜냐하면이 속성을 추가하지 않으면 일부 정보가 false 인 경우에도 정보가 전송되기 때문입니다.
아마도 누군가 내 양식에서 유효성 확인 작업을 수행 할 수있는 팁을 가지고있을 것입니다. 여러분 모두에게 좋은 날!