Immer eine Fehlermeldung einfügen in ein Meteoriten-Sammlung
Bin ich angefangen zu arbeiten mit Meteor und ich bin mit meinem ersten Problem. Ich versuche, fügen Sie ein Element in meiner Sammlung. Ich bekomme die folgende-Konsole-log-Fehler. Kann mir jemand helfen, ein Meteor noob?
einfügen-Fehler: Methode nicht gefunden
Dies ist die Zeile, die den Fehler verursachen:
Videos.insert({name: el.value});
Meine js-Datei:
var Videos = new Meteor.Collection("videos");
if (Meteor.isClient) {
Template.videoList.video = function() {
return Videos.find();
}
Template.videoForm.events({
'click button': function(e, t){
var el = t.find("#name");
Videos.insert({name: el.value});
el.value = "";
}
});
}
- haben Sie eine
var Videos = new Meteor.Collection("videos")
zugänglich auf der server-Seite zu? - Ja, das war es. Meine Sammlung war nur auf dem client. Danke!
- Sie sollte die post Ihren Kommentar als eine Antwort, so dass null annehmen kann.
- Duplikat von Meteor über eine lokale Verbindung führt zu Fehler: "einfügen fehlgeschlagen: 404 -- Methode nicht gefunden
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie versuchen, Video.einfügen. Meteor versucht, legen Sie sowohl auf dem client und auf dem server. Meteor-design, es auf diese Weise zu helfen, reflektieren die Veränderung sofort an den client(latenzausgleich).
Wenn Sie Ihre Video-Sammlung ist nicht auf dem server definiert (nicht in Meteor.isServer wickeln oder Datei zugreifen kann-Server). Sie wirft den Fehler, den Sie gestoßen.
Wenn Sie möchten, legen Sie dem AUFTRAGGEBER nur zu. Sie können den Zugriff der _collection. Damit Sie Ihre insert-Anweisung wäre Videos._collection.einfügen(Werte);
Finden Sie mehr info hier in diesem screen-cast: http://www.eventedmind.com/feed/meteor-anatomy-of-a-collection-insert
Zu einem lokalen-nur Abholung:
MyLocalCollection = new Collection(null);
(Referenz doc hier)
Über "_collection":
_collection
ist eine undokumentierte Eigenschaft, verhält sich seltsam in vielen Fällen. Sie könnten es vorziehen, es nicht zu verwenden.Um die Manipulation nur auf den lokalen cache eines client-server-Kollektion:
Gibt es keine Möglichkeit das direkt tun. Es ist jedoch sehr einfach zu erstellen einer dynamischen lokalen Spiegel einer bestehenden Sammlung (in meiner Erfahrung ist dies der Weg zu gehen für eine komplexe UI). Sehen dieser Beitrag.