2015-04-05 8 views
1

Я пытаюсь создать страницу профиля пользователя с помощью autoform, но autorofm скажите мне «Ошибка: AutoForm: вы должны указать коллекцию, когда тип формы вставляется».Профиль профиля автоформатов

У меня есть только один способ с помощью методов?

Пожалуйста, помогите мне решить проблему.

Helper
Template.accountForm.helpers({ userSchema: function() { return Schema.User; } });

Шаблон
<template name="accountForm"> <div class="panel-body"> {{#autoForm schema=userSchema collection=Users id="accountForm" type="insert"}} <fieldset> {{> afObjectField name='profile'}} </fieldset> <button type="submit" class="btn btn-primary">Insert</button> {{/autoForm}} </div> </template>

Схема

Schema = {}; 

Schema.UserProfile = new SimpleSchema({ 
    lastname: { 
     type: String 
    } 
}); 

Schema.User = new SimpleSchema({ 
    _id: { 
     type: String, 
     regEx: SimpleSchema.RegEx.Id 
    }, 
    email: { 
     type: String, 
     regEx: SimpleSchema.RegEx.Email 
    }, 
    createdAt: { 
     type: Date 
    }, 
    profile: { 
     type: Schema.UserProfile, 
    }, 
    services: { 
     type: Object, 
     optional: true, 
     blackbox: false 
    } 
}); 

Meteor.users.attachSchema(Schema.User); 
+0

Измените свой тег автоматической формы, чтобы использовать 'type =" update "'. Это должно исправить это. –

+0

Tnx для ответа, но нет, не работает – jmlv

+0

По-прежнему такая же ошибка? –

ответ

2

Вам не нужен он lper, просто используйте объект Meteor.users.

{{#autoForm collection='Meteor.users' doc=currentUser type='update' id='accountForm'}} 
    {{> afQuickField name='profile'}} 
<button type='submit' class="btn btn-primary">Save profile</button> 
{{/autoForm}} 
+1

Это работа! Большой tnx! – jmlv

+0

не должно быть 'afObjectField'? –