【发布时间】:2018-02-17 06:30:36
【问题描述】:
您好,对于一个项目,我需要记录 .csv 下载的导出。 我搜索了很多,但仍然找不到答案。
我在我的 mongoDB 中创建了一个集合:'tokens'
- 模型位于/src/models/token.coffee
- 应用程序位于 /src/app.coffee
- 控制器位于 /src/controllers/token.coffee
这是我的模型:
mongoose = require('mongoose')
timestamps = require('mongoose-timestamp')
enums = require './enums'
schema = mongoose.Schema
# Schema definition
TokenSchema = new schema
user:
type: mongoose.Schema.Types.ObjectId
ref: 'User'
required: true
first_name:
type: String
required: true
last_name:
type: String
required: true
status:
type: String
enums: enums.TokenStatuses.__values
default: enums.TokenStatuses.running
# Plugins
TokenSchema.plugin timestamps, createdAt: 'created_at', updatedAt: 'changed_at'
try
mongoose.model 'Token', TokenSchema
我从控制器调用以下函数:
create_tokens_record = (user_id) ->
User.findOne {_id: user_id}, (err, user) ->
obj =
user: user._id
first_name: user.first_name
last_name: user.last_name
token = new models.Token(obj)
console.log token
token.save (err) ->
return err if err
错误是:
events.js:72
throw er; // Unhandled 'error' event
^
TypeError: undefined is not a function
at c:\Users\Daan\api\src\controllers\user.coffee:239:15
at Query.<anonymous> (c:\Users\Daan\api\src\node_modules\mongoose\lib\model.js:3435:16)
at c:\Users\Daan\api\src\node_modules\mongoose\node_modules\kareem\index.js:273:21
at c:\Users\Daan\api\src\node_modules\mongoose\node_modules\kareem\index.js:127:16
at process._tickDomainCallback (node.js:492:13)
我不知道为什么我的模型仍未定义。希望有人能帮帮我!
【问题讨论】:
-
user.coffee:239 中的代码行是什么??
-
@Subburaj,我发现错误日志中的某些部分代码行不正确。但我发现它发生在这一行:token = new models.token(obj) 注意:我需要这样的模型:models = require '.,/models' 我尝试使用:Token = require '。 /models/token' 然后创建模型: token = new Token(obj) 得到同样的错误。
标签: node.js mongodb coffeescript