本文介绍了流星:插入失败:找不到方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我收到

要修正此问题,请复制您在 / server 目录中使用 .coffee 文件:

  @VINs = new Meteor.Collection(vins)


I am receiving the insert failed: Method not found log message and it probably is the result of what is described in these threads:

However, I'm not seeing how. Let me show the code in hopes that will explain more clearly. I'm using Coffeescript:

if Meteor.isClient
  @VINs = new Meteor.Collection("vins")

  scoped_vins = @VINs
  Template.vins.events =
    "click .icon-plus-sign": ->
      console.log "this is #{this}"
      realVIN = $("#your-vin").val().replace /\D/g, ''
      console.log "user id is: #{Meteor.userId()} vin is #{parseInt(realVIN)}"
      VINs.insert number: parseInt(realVIN), owner: Meteor.userId() if Meteor.userId()
      $("#your-vin").val('')
else
  @VINs = new Meteor.Collection("vins")

I'm totally a n00b with Meteor, but what I've gleaned from the above-cited threads is that the collection must be available on the client and the server. Is that not what I have done, or am I developing Coffee-blindness?

Thanks!

解决方案

Make sure you've also declared your collection on the server as well as the client.

In your code above @VINs = new Meteor.Collection("vins") in both the client and server so what it might be is that you've put your code into the /client directory?

If so this means that the code will only be run on the client, even though you have the else for the if Meteor.isClient block.

To rectify this, copy the line you used into a .coffee file in the /server directory:

@VINs = new Meteor.Collection("vins")

这篇关于流星:插入失败:找不到方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-05 12:50