流星插入项目到集合不起作用

时间:2015-08-31 11:08:53

标签: javascript meteor

我创建了一个包含两个项目的集合(使用命令控制台输入),现在我正在开发一种从应用程序中将新项目输入集合的方法。

当我输入新名称并点击[enter]时,日志显示表单已提交,并且事件已在船上输入,但实际收集仅保留两个项目。

鉴于日志显示事件正确读取表单输入,我怀疑问题在Blogs.insert位内,但我不确定是什么错误。< / p>

HTML:

<form class="newblog">
    <input type="text" name="blogname" placeholder="New Blog Name"/>
</form>

JS:

Blogs = new Mongo.Collection("blogs");

//...irrelevant stuff for the rest of the app...

Template.blogroll.events({
    "submit .newblog": function (event) {
        // prevent browser default behaviour
        event.preventDefault();

        // log input
        console.log(event);

        // get value from form element
        var blog_to_enter = event.target.blogname.value;

        // insert a blog into the collection
        Blogs.insert({
            blog: blog_to_enter,
            created: new Date()
        });

        // clear form
        event.target.blogname.value = "";
    }
});

2 个答案:

答案 0 :(得分:2)

有关示例,请参阅此meteorpad。 也许您已经定义了一些允许/拒绝规则来拒绝插入博客,或者您只是忘记订阅博客集合?

答案 1 :(得分:0)

不要定义var blog_to_enter = event.target.blogname.value; 而不是:

Blogs.insert({
            blog: blog_to_enter,
            created: new Date()
        });

使用&#34; blogname&#34;:

Blogs.insert({
            blog: blogname,
            created: new Date()
        });

它应该那样工作