2016-02-17 14 views

Trả lời

7

Phương pháp findOne là trình bao bọc cho phương thức findAll. Do đó, bạn có thể chỉ cần sử dụng findAll với giới hạn 1 và thứ tự theo id giảm dần.

Ví dụ:

YourModel.findAll({ 
    limit: 1, 
    where: { 
    //your where conditions, or without them if you need ANY entry 
    }, 
    order: [ [ 'createdAt', 'DESC' ]] 
}).then(function(entries){ 
    //only difference is that you get users list limited to 1 
    //entries[0] 
}); 
+1

Tôi nghĩ bạn có nghĩa là 'createdAt', không phải 'id' trên dòng 6. Đăng một biên tập: http://stackoverflow.com/suggested-edits/2345804 – Noah

+0

Thường id là tăng tự động. Do đó, giá trị cao nhất của id có nghĩa là mục nhập được thêm cuối cùng. Nhưng có bạn có thể sử dụng 'createdAt'. –

+0

Nếu bạn chắc chắn rằng bạn thích createAt, tôi sẽ chấp nhận chỉnh sửa của bạn. –

13
model.findOne({ 
    where: { 
     key: key, 
    }, 
    order: [ [ 'createdAt', 'DESC' ]], 
}); 
+1

Hi szym; mã của bạn có thể đúng, nhưng với một số ngữ cảnh, nó sẽ tạo ra một câu trả lời tốt hơn; ví dụ: bạn có thể giải thích cách thức và lý do thay đổi được đề xuất này sẽ giải quyết vấn đề của người hỏi, có thể bao gồm liên kết đến tài liệu có liên quan. Điều đó sẽ làm cho nó hữu ích hơn cho họ, và cũng hữu ích hơn cho người đọc trang web khác, những người đang tìm kiếm các giải pháp cho các vấn đề tương tự. –

+2

No. Câu hỏi đơn giản. Câu trả lời đơn giản. Bạn không cần nhiều hơn thế. Tôi đang tìm kiếm câu trả lời cho bản thân mình và thông tin này chính xác là những gì tôi đang tìm kiếm. Trong sự hỗn loạn của quá nhiều thông tin thường ít hơn là nhiều hơn nữa. – szym

Các vấn đề liên quan