我创建了一个包含非常简单的国家/地区列表的示例,并根据此处的说明创建了api路由:https://gist.github.com/JedWatson/9741171
server.js:
app.get('/api/countries', keystone.middleware.api, routes.api.countries.list);
路由/ API / countries.js:
import keystone from 'keystone';
export function list(req, res) {
keystone.List('Country').model.find((err, items) => {
if (err) return res.apiError('database error', err);
res.apiResponse({
countries: items
});
});
}
我收到错误Cannot read property 'find' of undefined
,List对象存在,但它没有model
属性。有人知道为什么吗? keystone管理UI按预期工作,数据库中有多个对象。
答案 0 :(得分:5)
问题在于我使用keystone.List
(大写)代替keystone.list
。希望这个答案可以帮助别人。