我已经删除了自动发布以及不安全。我还创建了一个文件夹客户端和服务器,并且每个文件夹都有init.js,其中包含客户端代码和服务器代码。MeteorJS插入不工作
在init.js客户端我的代码
Template.adminSetup.events({
'submit #adminFormSetup': function(event) {
event.preventDefault();
var adminid = event.target.adminid.value;
var adminUsername = event.target.adminUsername.value;
var adminEmail = event.target.adminEmail.value;
var fname = event.target.fname.value;
var lname = event.target.lname.value;
var gender = event.target.gender.value;
var dateBirth = event.target.dateBirth.value;
Meteor.call('insertAdminData',adminid,adminUsername,adminEmail,fname,lname,gender,dateBirth);
console.log(adminid);
console.log(adminUsername);
console.log(adminEmail);
console.log(fname);
console.log(lname);
console.log(gender);
console.log(dateBirth);
alert("Admin Account Successfully Created!")
Router.go('/accountChecker');
}
});
Meteor.subscribe('test');
上面的代码从表格得到值,现在我的init.js服务器端里面我有:
Meteor.publish('test', function(){
return Meteor.users.find()
return AdminAccount.find()
});
Meteor.methods({
//-------------------------------------------------------------
//Method that will insert the admin data to the database
'insertAdminData': function(adminid,adminUsername,adminEmail,fname,lname,gender,dateBirth) {
AdminAccount.insert({
adminid: adminid,
adminUsername: adminUsername,
adminEmail: adminEmail,
firstname: fname,
lastname: lname,
gender: gender,
dateBirth: dateBirth
});
console.log("you clicked the right button");
}
//-------------------------------------------------------------
});
将数据存储在名为AdminAccount的集合中。插入数据时,控制台中没有错误或任何警告信号,但数据不会存储在AdminAccount集合中。我不确定代码中的错误。请指教。由于
是你的控制台日志返回的信息?您可能正在向错误的模板添加事件,它始终发生在我身上 –
@AramilRey - 我尝试在服务器端添加console.log,并且在执行事件时它不显示,日志应该显示出现。客户端的控制台登录显示表单中的正确数据,但插入它们似乎是个问题。 “Meteor.call()”方法似乎不起作用。 –
在服务器端,我在控制台的下面添加了一个console.log(“success”);以查看这两个代码是否已连接,并且是自从日志显示以来它们已连接。我想知道它为什么不插入 –