我希望從我的 mongodb 資料庫中創建一個串列,該串列將由“用戶名”欄位的特定欄位映射。
我在這里讀到,為每個用戶分配一個集合來使用 mongodb 進行命名空間限制是不明智的,所以我試圖按用戶名欄位對我的集合進行排序
我的 JSON 物件看起來像這樣
集合“用戶”
{
"_id": {
"$oid": "636a904602fa5ea137276767"
},
"project_name": "project01",
"username": "user01",
"__v": {
"$numberInt": "0"
}
}
這是我的 Next.js 頁面檔案
import dbConnect from '../../lib/dbConnect'
import User from '../models/User'
export default function Page({ users }) {
return (
<>
{users.map((user) => (
<div key={user._id}>
<span>username: {user.username} project_name: {user.project_name}</span>
</div>
))}
</>
);
}
export async function getServerSideProps() {
await dbConnect()
const result = await User.find({})
const users = result.map((doc) => {
const user = doc.toObject()
user._id = user._id.toString()
return user
})
return { props: { users: users } }
}
結果資料如下所示
username: user01 project_name: project01
username: user02 project_name: project02
username: user01 project_name: project03
username: user03 project_name: project04
username: user02 project_name: project05
username: user03 project_name: project06
username: user02 project_name: project07
username: user02 project_name: project08
username: user02 project_name: project09
username: user01 project_name: project10
如何對這些資料進行排序,使其僅顯示 user01 的資料而不顯示其他用戶?我需要它看起來像這樣
username: user01 project_name: project01
username: user01 project_name: project03
username: user01 project_name: project10
對此的任何幫助都會很棒......在此先感謝。
uj5u.com熱心網友回復:
更改find(...)以接受所需的過濾器。
const specificUserName = 'user01' // Set this wherever
const result = await User.find({ username: specificUserName })
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/533120.html
標籤:javascript反应mongodb猫鼬下一个.js
上一篇:如何將物體欄位添加到加入的檔案?
