Ich versuche, einen Wert zu setzen Werte unter Verwendung von Autowert basierend auf bereits gespeicherte ich Meteor bin mit 1.3.4.1Autowert funktioniert nicht, wenn Sie zu validieren gegen mongodb Sammlung Felder
Dies verwendet in Meteor arbeiten 1.1.0.2
mein Codehier:
id: {
type: String,
label: "ID",
autoValue: function() {
var isFirstTime = this.field("profile.isFirstTime").value;
var isApproved = this.field("profile.changesApproved").value;
var value = this.field("profile.unapproved_id").value;
var userId = this.userId;
var user = Meteor.users.findOne({_id: userId});
if (user && user.profile && user.profile.id)
{
return user.profile.id;
}
}
}
I-Wert von user.profile.id erwarte zurückgegeben werden, da user.profile.id einen Wert in der Benutzer-Kollektion hat, aber ich bekomme einen Wert, der aus Eingabefeld übergeben wird . Wie bekomme ich einfach-Schema, um Sammlung Werte zu bemerken, wie es auf Meteor 1.1.0.2
Es gibt kein Problem mit dem Objekt 'this'. Das Problem, das ich erlebe, ist mit der if-Anweisung. Ich verfolgte den Code mit dem Debugger und es scheint, den Wert in user.profile.id zurückzugeben, aber wenn Verarbeitung endet, hat ID nicht den Wert in user.profile.id. Es hat den Wert in der Eingabe erfasst –
dann müssen Sie möglicherweise AutoForm-Hooks anstelle von AutoValue: mit 'Autoform.hooks ({" id_of_form ": {vor: {Methode: Funktion (doc) {..Ihr Code hier} }}); 'Sie können das Dokument zwischen der Einreichung durch den Benutzer und der Übergabe an den Server manipulieren. – MrE