首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Autoform + Collection 2

Autoform + Collection 2
EN

Stack Overflow用户
提问于 2014-08-18 01:06:21
回答 1查看 309关注 0票数 1

嗨,我有一个关于客户端错误填充的问题。客户端/html

代码语言:javascript
复制
 <template name="add_book">    
 {{#autoForm collection="booklist" id="insertBooklist" type="insert"}}
 <div class="forms">

 {{>afFieldLabel name="title"}}

 {{> afFieldInput name='title' autofocus='' placeholder="schemaLabel" class="input-text"}}

 {{#if afFieldIsInvalid name='title' autoform=..}}
  <span class="help-block">{{{afFieldMessage name='title' autoform=..}}}</span>
 {{/if}}
 </div>
   <a href="{{pathFor 'user_board'}}" class="butyellow"><span>Save</span></a>
  {{/autoForm}}
</template>

作为客户端JS,我有下一步:

代码语言:javascript
复制
AutoForm.setDefaultTemplate('plain');

Template.add_book.events({
  'click .butyellow': function (event, template) {
      event.preventDefault();
      event.stopPropagation();

      title = template.find("input:text[name=\"title\"]");

      var book = {title: title.value}

      Meteor.call('add_book', book,
        function(error, id) {
        if (error)
        {
           console.log(error);
        }
        else  {
          title.value = '';
          alert("Does is good:" + id);
        }
      });
  }
});

在服务器上:

代码语言:javascript
复制
Meteor.methods({
  add_book: function (data) {

    Booklist.insert(data,function(err, res) {
        if (err) {
          throw new Meteor.Error(403, Booklist.simpleSchema().namedContext('insertBooklist').invalidKeys()); 
        }
        return res;
      });
 }
});

有了所有这些,我可以把错误放在控制台上,但由于某种原因,afFieldMessage没有显示:\有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2015-05-09 23:32:30

我认为您必须传递一个包含要失效的字段列表的数组,例如:

代码语言:javascript
复制
Booklist.simpleSchema().namedContext('insertBooklist').invalidKeys([{name: 'title', 'type': 'required'}])
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25351549

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档