簡體   English   中英

從前端編輯用戶信息

[英]Edit user info from front-end

我正在使用mongodb構建一個具有注冊/登錄系統的網站。 我已經成功創建了一個admin頁面,該頁面只能由管理員訪問( if permission > 0 )。 admin page ,將顯示所有用戶,其中顯示用戶名,電子郵件,電話號碼和points 我所試圖做的是要能夠incease使用管理員帳戶從網頁用戶的點。 這是使用jade js來顯示用戶的方式及其在頁面上的外觀:

ul each user, i in userlist li#user_list_item label Username:   span #{user.username}   label Email:   span #{user.email}   label Points:   span #{user.points}   button.btn.btn-primary() +pts   label Telefon:   span #{user.phoneNo}   label Permissions:   span #{user.permissions}

在此處輸入圖片說明

點旁邊是名稱為+pts button 當按下該按鈕時,我想增加該按鈕所在的用戶的分數。 假設我點擊了第一個用戶名admin上的按鈕,因此積分將增加1,因此新積分為1005 標簽僅用於更改CSS中的顏色。 如何使用可用於每個按鈕的一個功能來實現此目的? 這是我在管理頁面上使用的get request

router.get('/admin', isAdmin, function(req, res) {
  const MongoClient = mongodb.MongoClient;
  const url = 'mongodb://localhost:27017/gymsite';

  MongoClient.connect(url, function(err, db) {
      if (err) {
          res.send({
              msg: "Failed to connect to db"
          });
      } else {
          const users = db.collection('users');

          users.find({}).toArray(function(err, result) {
              if (err) {
                  res.send(err);
              } else if (result.length) {
                  res.render('admin', {
                      'userlist': result
                  });
              } else {
                  res.send({
                      msg: 'No users found'
                  });
              }
              db.close();
          });
      }
  });

});

isAdmin是用於檢查用戶是否經過isAutheinticated以及該用戶的permissions是否greater than 0 基本上,它僅檢查其是否為管理員。

我希望我清楚地寫下了我想要實現的一切。

預先謝謝你們!

剛開始時,只建立到數據庫的一個連接可能很有用,promise在這里很有用,此外,我們可以在實用程序中使用路由內的數據庫:

在此處輸入圖片說明

現在我們知道了,管理頁面可以簡化為:

在此處輸入圖片說明

現在要將設置應用於用戶,我們需要一個API端點:

在此處輸入圖片說明

並且您必須在管理路由下更改呈現的html,以便可以輕松使用它:

在此處輸入圖片說明

然后,只要單擊更新,您只需在后台向API發出請求:

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM