所以我正在搞乱SailsJS以试图获得API并快速运行。我还没有设置数据存储(可能会使用mongodb),但我看到我假设的是像SQLite数据库或其他东西。所以我为用户生成了一个模型和控制器。所以在浏览器中我点击了user / create。我看到createdAt和updatedAt但没有Id。我是否需要真正的数据存储来查看ID?这仍然是你免费获得的东西吗?
适配器
// Configure installed adapters
// If you define an attribute in your model definition,
// it will override anything from this global config.
module.exports.adapters = {
// If you leave the adapter config unspecified
// in a model definition, 'default' will be used.
'default': 'disk',
// In-memory adapter for DEVELOPMENT ONLY
// (data is NOT preserved when the server shuts down)
memory: {
module: 'sails-dirty',
inMemory: true
},
// Persistent adapter for DEVELOPMENT ONLY
// (data IS preserved when the server shuts down)
// PLEASE NOTE: disk adapter not compatible with node v0.10.0 currently
// because of limitations in node-dirty
// See https://github.com/felixge/node-dirty/issues/34
disk: {
module: 'sails-dirty',
filePath: './.tmp/dirty.db',
inMemory: false
},
// MySQL is the world's most popular relational database.
// Learn more: http://en.wikipedia.org/wiki/MySQL
mysql: {
module : 'sails-mysql',
host : 'YOUR_MYSQL_SERVER_HOSTNAME_OR_IP_ADDRESS',
user : 'YOUR_MYSQL_USER',
password : 'YOUR_MYSQL_PASSWORD',
database : 'YOUR_MYSQL_DB'
}
};
模型
/*---------------------
:: User
-> model
---------------------*/
module.exports = {
attributes: {
firstName: 'STRING',
lastName: 'STRING'
}
};
答案 0 :(得分:0)
.../user/findAll
列出所有用户。每个用户都应该有一个'id'属性,例如
{
"username":"admin",
"password":"$2a$10$SP/hWtlJINkMgkAuAc9bxO1iWsvVcglwEU4ctGCiYpx.7ykaFWt56",
"createdAt":"2013-07-12T17:36:29.852Z",
"updatedAt":"2013-07-12T17:36:29.852Z",
"id":1
}
答案 1 :(得分:0)
他们删除了findAll你只需使用find instad
你也可以这样请求http://example.de/Model/create?firstname=Foo&lastname=bar答案 2 :(得分:0)
我通过在相同的sails应用程序中切换不同的DB并且它的工作非常正常来检查这个。
因此,在这种情况下,您可以将autoPK的属性添加到模型中,并将其设置为true,如下所示:
module.exports = {
attribute:{
//your model attributes with validations.
},
autoPK:true
}
如果这不适合您,那么我认为您在系统上安装的风帆副本有问题。
请尝试使用npm安装较新版本的风帆(v0.9.8)或尝试使用较新版本(v0.9.8)的详细信息更新package.json并执行npm install。