2017-09-22 10 views
0

제목에 따르면 과 관련된 문제가 있으며 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 인 경우에도 정보가 전송되기 때문입니다.
아마도 누군가 내 양식에서 유효성 확인 작업을 수행 할 수있는 팁을 가지고있을 것입니다. 여러분 모두에게 좋은 날!

답변