1
我有一個url
列的MySQL表,我想獲得表中每個url
值的列表。結構:如何從Sails JS Waterline集合中獲取指定字段的列表?
在PHP中使用Laravel我可以做這樣的事情讓每一個url
列值的數組:
$boards = Board::all()->lists('url');
然而,我無法弄清楚如何使用要做到這一點Sails JS。我注意到沒有任何參數的find()會獲取數據庫中的每一行,但是我找不到任何文檔中的任何內容,它們使我可以獲取url
列的值列表,或者遍歷返回的集合。
我已經試過這樣:
var boards = Board.find().exec(function(error, _boards) {
if(error)
{
return response.negotiate(error);
}
return _boards;
});
但是,我不能真正似乎遍歷返回的數據。
有什麼想法?
編輯:
完全HomepageController.js:
module.exports = {
index: function (request, response) {
var data = {
currentDate: (new Date()).toString(),
boards: Board.query('SELECT url FROM board', function (error, results) {
if (error) {
return response.negotiate(error);
}
return results;
})
};
return response.view('homepage', data);
}
};
編輯:工作代碼:
module.exports = {
index: function (request, response) {
Board.query('SELECT url FROM board', function(error, results) {
if(error)
{
return response.negotiate(error);
}
return response.view('homepage', { currentDate: (new Date()).toString(), boards: results });
});
}
};
你好,我想你的建議,但是我仍然無法得到的結果在我的HTML顯示的內容。對於我的HTML,我正在做的是使用Twig對'板子'變量進行for循環。我已將我的控制器的代碼添加到主帖子中。 –
'Board.query'不會同步返回數據,這是一個異步回調。將'results'分配給回調函數內的'data.boards',然後在回調中調用'response.view()'。 –
謝謝,這是有效的。這需要一段時間才能習慣。有沒有建議我的控制器來簡化這個建議的方法?例如,如果我正在執行多個查詢,我將如何確保在返回視圖之前完成了所有查詢? –