css - 開發(fā)后臺系統(tǒng)的時(shí)候權(quán)限之類的是怎么操作的呢
問題描述
比如菜單欄的顯示,按鈕的操作等等。只考慮前端需要的操作。。謝謝
問題解答
回答1:如果按照role-menu來說,前端必須保存role 和 menu的關(guān)聯(lián)關(guān)系(暫且稱為roleMenuList,當(dāng)然一般這個(gè)list是從后臺獲取的),可以是一個(gè)純id的list,
roleMenuList: [1,2,3,4,5]
頁面上渲染遍歷菜單的時(shí)候判斷當(dāng)然菜單項(xiàng)id是否存在roleMenuList,是的話就顯示,否則隱藏。
按鈕權(quán)限的話,也是需要一個(gè)類似id的標(biāo)識符來識別到這個(gè)元素,可以使用自定義屬性,例如
<button authorCode='myButtion'></button>
從后端獲取一個(gè)按鈕權(quán)限列表,可以包含 myButtion的元素需要隱藏或者禁用,例如
buttonAuthorList = [ { code: ’myBution’, to: ’disabled’}, { code: ’hisBution’, to: ’hidden’} ... ]
識別到code標(biāo)識符之后,在去做相應(yīng)的操作,當(dāng)然,這里提到的都只是簡單的例子,屬性還是需要認(rèn)真嚴(yán)格定義的~
回答2:可以參考 windows : 帳號 -> 角色 -> 權(quán)限;權(quán)限可以按 白名單 / 黑名單 或者 一起使用;后端驗(yàn)證,前端根據(jù)證后的角色和權(quán)限列表做剪裁和處理。
回答3:之前做過一個(gè)php+mysql評論功能,非當(dāng)前用戶不顯示編輯刪除等按鈕,比較簡單
if (isset($_SESSION[’id’])) { if (isset($_SESSION[’id’]) == $row2[’id’]) {echo '<form class=’delete-form’ method=’POST’ action=’'.deleteComments($conn).'’><input type=’hidden’ name=’cid’ value = ’'.$row[’cid’].'’ /> <button type=’submit’ name=’commentDelete’>Delete</button> </form> <form class=’edit-form’ method=’POST’ action=’editcomment.php’><input type=’hidden’ name=’cid’ value = ’'.$row[’cid’].'’ /><input type=’hidden’ name=’uid’ value = ’'.$row[’uid’].'’ /><input type=’hidden’ name=’date’ value = ’'.$row[’date’].'’ /><input type=’hidden’ name=’message’ value = ’'.$row[’message’].'’ /><button>Edit</button> </form>'; } else { echo '<form class=’edit-form’ method=’POST’ action=’'.deleteComments($conn).'’><input type=’hidden’ name=’cid’ value = ’'.$row[’cid’].'’ /> <button type=’submit’ name=’commentDelete’>Reply</button> </form>'; }} else { echo '<p class=’commentmessge’>You need to be logged in to reply!</p>p>';}
相關(guān)文章:
1. docker容器呢SSH為什么連不通呢?2. docker start -a dockername 老是卡住,什么情況?3. docker - 各位電腦上有多少個(gè)容器啊?容器一多,自己都搞混了,咋辦呢?4. Android TextView 或 ListView 加載過渡效果5. 關(guān)docker hub上有些鏡像的tag被標(biāo)記““This image has vulnerabilities””6. service mysql.server start 啟動失敗7. python - thrift 返回 TSocket read 0 bytes 求助!!!!8. 【python小白】 問關(guān)于之初始化一次對象的問題9. python - 為什么我直接用requests爬網(wǎng)頁可以,但用scrapy不行?10. python3.x - python中import theano出錯(cuò)
