Javascript Sails参考错误:文章“;模型";没有定义
我试图通过控制器中的文章模型访问findOne(),但没有成功 我犯了这个错误Javascript Sails参考错误:文章“;模型";没有定义,javascript,node.js,sails.js,waterline,Javascript,Node.js,Sails.js,Waterline,我试图通过控制器中的文章模型访问findOne(),但没有成功 我犯了这个错误 > error: Sending 500 ("Server Error") response: > ReferenceError: Article is not defined > at Object.module.exports.createArticle (c:\Users\pisix\BizBiz\BizBizBackEnd\api\controllers\Art
> error: Sending 500 ("Server Error") response:
> ReferenceError: Article is not defined
> at Object.module.exports.createArticle (c:\Users\pisix\BizBiz\BizBizBackEnd\api\controllers\ArticleController.js:16:9)
> at bound (C:\Users\pisix\AppData\Roaming\npm\node_modules\sails\node_modules\lodash\dist\lodash.js:729:21)
> at routeTargetFnWrapper (C:\Users\pisix\AppData\Roaming\npm\node_modules\sails\lib\router\bind.js:179:5)
> at callbacks (C:\Users\pisix\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:164:37)
> at param (C:\Users\pisix\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:138:11)
> at param (C:\Users\pisix\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:135:11)
> at pass (C:\Users\pisix\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:145:5)
> at nextRoute (C:\Users\pisix\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:100:7)
> at callbacks (C:\Users\pisix\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:167:11)
> at C:\Users\pisix\AppData\Roaming\npm\node_modules\sails\lib\router\bind.js:187:7
> at alwaysAllow (C:\Users\pisix\AppData\Roaming\npm\node_modules\sails\lib\hooks\policies\index.js:207:11)
> at routeTargetFnWrapper (C:\Users\pisix\AppData\Roaming\npm\node_modules\sails\lib\router\bind.js:179:5)
> at callbacks (C:\Users\pisix\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:164:37)
> at param (C:\Users\pisix\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:138:11)
> at param (C:\Users\pisix\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:135:11)
> at pass (C:\Users\pisix\AppData\Roaming\npm\node_modules\sails\node_modules\express\lib\router\index.js:145:5)
> [ReferenceError: Article is not defined]
我怎样才能修好它
下面是我的文章模型
/**
* Article.js
*
* @description :: TODO: You might write a short summary of how this model works and what it represents here.
* @docs :: http://sailsjs.org/#!documentation/models
*/
module.exports = {
autoPK: false,
autoCreatedAt: false,
autoUpdatedAt: false,
tableName:'article',
identity:'article',
attributes: {
idArticle:{
type:'integer',
unique:true,
required:true,
columnName:'IDARTICLE',
autoIncrement:true,
primaryKey:true
},
titre:{
type:'string',
required:true,
columnName:'TITRE',
index:true
},
details:{
type:'text',
required:true,
columnName:'DETAILS',
size:100
},
etat:{
type:'string',
columnName:'ETAT',
enum:['Vendu','Réservé'],
index:true
},
prix:{
type:'float',
columnName:'PRIX',
index:true,
required:true
},
dateAjout:{
type:'datetime',
columnName:'DATEAJOUT',
index:true,
required:true
},
}
};
下面是我的控制器ArticleController.js
module.exports = {
/**
* `ArticleController.createArticle()`
*/
createOArticle: function (req, res) {
var idarticle = req.body.idarticle;
console.log('idarticle to edit: '+ idarticle);
Article.findOne({idArticle:idarticle}).exec(function (err, article) {
if (article) {
console.log('article '+ idarticle + ' trouvé');
var dataarticle = req.body.article;
article.titre = dataarticle.titre;
article.details = dataarticle.details;
article.prix = dataarticle.prix;
article.etat = dataarticle.etat;
article.dateAjout=new Date();
article.save(function (err, success) {
if (success) {
return res.send({articleupdate: true, article: article,success:true,message:req.__('message-success-creation')});
}
if (err) {
return res.send({success: false, message:req.__('message-erreur-update')})
}
});
}
if (err)
{
//Create Article
}
});
},
};
我使用的是sails v0.11您不必定义模型的标识。Sails.js将使用它作为标识,并将其分配给global 只需删除模型的以下行
identity:'article',
我试着把名字改成小写字母,例如
company.find({}).exec(function(err, items) {
它适合我。检查您的模型文件夹,它可能在控制器文件夹中。我已经面临同样的问题了。我不知道如何将模型文件夹插入控制器文件夹。因此,请检查您的控制器文件夹。您可能也有同样的问题。您的sails配置中是否将globals设置为false?查看
sails.models.article
existsglobals是否未设置为false。下面是我的global.js文件module.exports.globals={//}:true,//async:true,//sails:true,//services:true,//models:true}
sails.models.article存在您是否使用了“严格使用”代码>?不,我没有使用“严格使用”我犯了一个错误,sails.models.article
不存在