ฉันต้องการใช้ระบบที่ใช้สิทธิ์เพื่อ จำกัด การกระทำบางอย่างในแอปพลิเคชัน Django ของฉัน การดำเนินการเหล่านี้ไม่จำเป็นต้องเกี่ยวข้องกับรุ่นใดรุ่นหนึ่ง (เช่นการเข้าถึงส่วนต่างๆในแอปพลิเคชันการค้นหา ... ) ดังนั้นฉันจึงไม่สามารถใช้กรอบการอนุญาตหุ้นได้โดยตรงเนื่องจากPermission
โมเดลต้องการการอ้างอิงถึงประเภทเนื้อหาที่ติดตั้ง
ฉันสามารถเขียนรูปแบบการอนุญาตของตัวเองได้ แต่จากนั้นฉันต้องเขียนสิ่งต่างๆทั้งหมดที่รวมอยู่ในการอนุญาต Django เช่น:
- ความเป็นไปได้ในการกำหนดสิทธิ์ให้กับผู้ใช้และกลุ่ม
- มัณฑนากร
permission_required
User.has_perm
และวิธีการของผู้ใช้ที่เกี่ยวข้อง- ตัวแปรแม่แบบ
perms
- ...
ฉันได้ตรวจสอบแอพบางตัวเช่นdjango-authorityและdjango-Guardianแต่ดูเหมือนว่าจะให้สิทธิ์มากยิ่งขึ้นควบคู่ไปกับระบบโมเดลโดยการอนุญาตการอนุญาตต่ออ็อบเจ็กต์
มีวิธีการนำกรอบงานนี้กลับมาใช้ใหม่โดยไม่ต้องกำหนดโมเดลใด ๆ (นอกเหนือจากUser
และGroup
) สำหรับโครงการหรือไม่