【发布时间】:2016-06-30 07:36:46
【问题描述】:
我正在努力将字符串数组插入 mongo db 集合。
出现错误insert failed: Error: Address must be a string
编辑
我正在为 CC 和参加者生成动态表单字段,并且需要将这些值保存在一个数组中。
这里是 jQuery sn-p:
$(function(){
$(document).on('focus', 'div.form-group-options div.input-group-option:last-child input', function(){
var sInputGroupHtml = $(this).parent().html();
var sInputGroupClasses = $(this).parent().attr('class');
$(this).parent().parent().append('<div class="'+sInputGroupClasses+'">'+sInputGroupHtml+'</div>');
});
$(document).on('click', 'div.form-group-options .input-group-addon-remove', function(){
$(this).parent().remove();
});
});
html:
<form class="row form-horizontal newMeeting">
<div class="form-group form-group-options col-xs-11 col-md-3" id="cc">
<div class="input-group input-group-option col-xs-12">
<input type="text" name="option[]" class="form-control" id="cc" placeholder="CCs">
<span class="input-group-addon input-group-addon-remove">
<span class="glyphicon glyphicon-remove"></span>
</span>
</div>
</div>
<div class="form-group form-group-options col-xs-11 col-md-3">
<div class="input-group input-group-option col-xs-12">
<input type="text" class="form-control" id="attendees" placeholder="Attendees">
<span class="input-group-addon input-group-addon-remove">
<span class="glyphicon glyphicon-remove"></span>
</span>
</div>
</div>
<div class="row no-print">
<div class="col-xs-12">
<input type="submit" value="Save" class="btn btn-primary pull-right">
</div>
</div>
</form>
我的架构:
Emails = new Mongo.Collection('emails');
EmailSchema = new SimpleSchema({
"attendeesEmail": {
type: [Object],
optional: true
},
"attendeesEmail.$.address": {
type: String,
regEx: SimpleSchema.RegEx.Email
},
ccEmails: {
type: [Object],
optional: true
},
"ccEmails.$.address": {
type: String,
regEx: SimpleSchema.RegEx.Email
}
});
Emails.attachSchema(EmailSchema);
事件:
Template.form.events({
'submit .newMeeting': function(event) {
var cc = $('#cc').serializeArray();
var attendees = $('#attendees').serializeArray();
});
插入:
Emails.insert({
attendeesEmail: [{address: attendees}],
ccEmails: [{address: cc }]
});
console.log(attendees); 打印 [Object]
错误消息说insert failed: Error: 0 must be a string
我尝试了一些解决方案,但无法使其正常工作,任何建议都将不胜感激。
【问题讨论】:
标签: mongodb meteor meteor-collection2 simple-schema