2016-12-06 4 views
0

У меня есть новый MongoDB схемыNodejs + MongoDB как ограничить данные для конкретного пользователя

let TestTable = new Schema({ 
    Title: String, 
    Content: String, 
}); 

Это метод пост для добавления данных:

api.post('/add',authenticate, (req, res) => { 
    let NewTestTable = new TestTable(); 
    NewTestTable.Title = req.body.Title; 
    NewTestTable.save(err => { 
     if (err) {res.send(err);} 
     res.json({message: "Addig was sucessfully"}); 
    }) 

пусть говорят, что я вошел в систему и у меня есть user id как я могу добавить новые данные для этой схемы только для определенного пользователя

и когда я делаю метод GET, я получу только данные для этого пользователя

Get:

api.get('/', authenticate,(req, res) => { 
    TestTable.find({}, (err, testtable) => { 
     if (err) {res.send(err);} 
     res.json(testtable); 
    }); 

спасибо!

+1

вы можете объяснить это немного больше? Вопрос слишком запутан. – Prajwal

+0

позвольте сказать, что у меня есть два пользователя им нужно использовать схему тестовых таблиц для добавления новых данных в базу данных Я хочу ограничить данные для конкретного пользователя , если пользователь1 сделает метод получения, он получит только данные он добавил –

ответ

0

вам нужно взять ссылку на пользователя в вашей схеме TestTable, чтобы вы могли просто добавить данные, и при поиске ваших данных просто нужно получить данные с условием вашего userId для обновления, вы можете использовать конкретный документ id вашей схемы TestTable.

Ex:

let TestTable = new Schema({ 
    Title: String, 
    Content: String, 
userId:{type:Schema.ObjectId,ref:"userId",default:null}, 

}); 
+0

ohhh спасибо ... но когда я делаю почтовый метод , что мне нужно делать? NewTestTable.userId = req.body.userId? –

+0

Да, это сработает для вас. –