Không chắc chắn cách sử dụng $currentDate khi chèn tài liệu vào bộ sưu tập MongoDB trong Meteor.
Chỉ có thể sử dụng tính năng này trong bản cập nhật chứ không phải bản chèn? Có vẻ lạ, nhưng tôi không thấy thay thế (thay vì sử dụng new Date
thay thế).
Ví dụ
Stuff.insert({
owner: Meteor.userId(),
createdAt: ..., // how to create this field with $currentDate ?
theStuff: "Some of the good stuff"
})
Notes/Suy nghĩ/TL, DR
- Fields có thể không bắt đầu với $ khai thác hoặc, như xa như tôi biết, dấu ngoặc nhọn
{}
. - Điểm của việc có một nhà điều hành chỉ hoạt động với các bản cập nhật, nếu đó thực sự là trường hợp?
- Tại sao/khi nào là
$currentDate
tốt hơnnew Date
? - Một điều tốt đẹp, nếu sử dụng Moment.js esp, là $ currentDate được nhập theo định dạng ISO 8601.
- Câu trả lời là làm một số loại thăng trầm ngay từ đầu? Nếu vậy, điều này có thể có hậu quả ngoài ý muốn không?
Really nice, cảm ơn bạn. –
. Nếu bạn có một ứng dụng phân tán kết nối với cụm sao chép/phân đoạn của bạn chèn nhiều tài liệu mỗi giây, bạn muốn trường createdAt nhất quán và sử dụng $ currentDate trên Insert sẽ là một giải pháp tốt hơn. Nếu bạn không có khối lượng chèn cao, chèn và chèn có thể giống nhau cho bạn nhưng thực tế là không. Upsert là chậm hơn và khi bạn sử dụng ** ngày mới ** bạn đang nhận được ngày từ máy khách không phải từ máy chủ cơ sở dữ liệu, do đó bạn dễ bị mâu thuẫn khi nói đến phân loại bởi createdAt. –
@MestreSan '$ currentDate' chỉ hoạt động với' updateOne' hoặc 'updateMany'. Không phải với 'chèn'. Có lẽ bạn có nghĩa là * cập nhật * khi bạn nói * chèn * trong bình luận. – styvane