Javascript 环回:TypeError:无法读取未定义的属性“find”
我看到了一些像我一样的问题,但找不到任何有效的解决方案,所以我想我会问。 我正在尝试从数据库中提取所有数据,以便在应用程序中选择部分数据。我的数据库工作正常,但当我尝试提取图片时,它失败了,并不断给我这个错误,而且似乎也没有从数据库接收数据:Javascript 环回:TypeError:无法读取未定义的属性“find”,javascript,node.js,reactjs,Javascript,Node.js,Reactjs,我看到了一些像我一样的问题,但找不到任何有效的解决方案,所以我想我会问。 我正在尝试从数据库中提取所有数据,以便在应用程序中选择部分数据。我的数据库工作正常,但当我尝试提取图片时,它失败了,并不断给我这个错误,而且似乎也没有从数据库接收数据: app.model.users.find((err,result)=>{ ^ TypeError: Cannot read property 'find' of undefined 这是我的密码:- server.
app.model.users.find((err,result)=>{
^
TypeError: Cannot read property 'find' of undefined
这是我的密码:-
server.js:-
'use strict';
const loopback = require('loopback');
const boot = require('loopback-boot');
const app = module.exports = loopback();
app.start = function() {
// start the web server
return app.listen(function() {
app.emit('started');
const baseUrl = app.get('url').replace(/\/$/, '');
console.log('Web server listening at: %s', baseUrl);
if (app.get('loopback-component-explorer')) {
const explorerPath = app.get('loopback-component-explorer').mountPath;
console.log('Browse your REST API at %s%s', baseUrl, explorerPath);
}
});
};
// Bootstrap the application, configure models, datasources and middleware.
// Sub-apps like REST API are mounted via boot scripts.
boot(app, __dirname, function(err) {
if (err) throw err;
// start the server if `$ node server.js`
if (require.main === module)
app.start();
});
console.log(Object.keys(app.models));
app.model.users.find((err,result)=>{
if(result.length ===0){
const user={
email:'jhanvi@gmail.com',
password:'jhanvi',
username: 'jhanvi',
};
app.models.user.create(user,(err,result)=>{
console.log("tried to create user ",err,result);
});
}
});
app.models.user.afterRemote('create', (ctx,user,next) =>{
console.log("new user is",user);
app.models.Profile.create({
first_name: user.username,
created_at: new Date(),
userId: user.id
},(err,result)=>{
if(!err && result){
console.log("created new profile",result);
}
else{
console.log("there is an error ",err);
}
});
next();
});
user.json:-
{
"name": "user",
"base": "PersistedModel",
"idInjection": true,
"options": {
"validateUpsert": true
},
"properties": {
"email": {
"type": "string"
},
"password": {
"type": "string"
}
},
"validations": [],
"relations": {
"Profile": {
"type": "hasMany",
"model": "Profile",
"foreignKey": ""
},
"accessTokens":{
"type":"hasMany",
"model":"CustomAccessToken",
"foreignKey":"userId"
}
},
"acls": [],
"methods": {}
}
Profile.json:-
{
"name": "Profile",
"base": "PersistedModel",
"idInjection": true,
"options": {
"validateUpsert": true
},
"properties": {
"first_name": {
"type": "string"
},
"last_name": {
"type": "string"
},
"created_at": {
"type": "date"
},
"age": {
"type": "number"
},
"history": {
"type": [
"object"
]
}
},
"validations": [],
"relations": {
"user": {
"type": "belongsTo",
"model": "user",
"foreignKey": "userId"
}
},
"acls": [],
"methods": {}
}
在您的模型中,您指的是用户 app.model.users.finderr,结果 那当然应该是 app.model.user.finderr,结果
我看到您似乎正在使用这两个版本…app.model.users在您调用app.model.users.find时不存在。。。。文档对.users属性何时保证可用有何说明?谢谢您的建议:。我不小心写了model.users而不是models.user。