ฉันไม่แน่ใจว่านี่เป็นข้อบกพร่องหรือฉันแค่ขาดอะไรบางอย่าง (แม้ว่าฉันจะแยกวิเคราะห์เอกสารเกี่ยวกับอินไลน์แล้วก็ตาม) แต่:
สมมติว่าฉันมีโมเดล A โมเดล A เป็นแบบอินไลน์ของโมเดล B ผู้ใช้ U มีสิทธิ์เข้าถึงโมเดล B เต็มรูปแบบ แต่จะเปลี่ยนแปลงเฉพาะการอนุญาตโมเดล A เท่านั้น (ดังนั้น ห้ามเพิ่มหรือลบ)
อย่างไรก็ตาม เมื่อแก้ไขโมเดล B ผู้ใช้ U ยังคงเห็นลิงก์ "เพิ่ม A อื่น" ที่ด้านล่าง แม้ว่า U จะไม่เพิ่มสิทธิ์สำหรับโมเดลนั้นก็ตาม
เกิดอะไรขึ้น? ทำไมลิงค์นั้นถึงแสดงต่อไป? ตรรกะของฉันบอกว่าหาก U ไม่มีสิทธิ์ในการเพิ่ม A ลิงก์ก็ไม่ควรปรากฏอีกต่อไป
นอกจากนี้ ตามหลักการแล้ว ฉันต้องการให้สิทธิ์ในการดูโมเดล A แก่คุณเท่านั้น (ดังนั้นอย่าเพิ่ม ลบ หรือเปลี่ยนแปลง - เฉพาะการดู) แต่ฉันได้อ่านเกี่ยวกับปรัชญานั้น (แปลกถ้าคุณถามฉัน) ตามปรัชญาที่ว่า "ถ้า คุณไม่ไว้ใจ U แค่ปฏิเสธไม่ให้เขาเข้าถึงพื้นที่ผู้ดูแลระบบพร้อมกัน" เป็นคำสอนที่โง่เขลา
ตอนนี้ฉันกำลังพยายามจำลอง 'สิทธิ์ดูอย่างเดียว' โดยปล่อยให้ U มีสิทธิ์เปลี่ยนและตั้งค่าฟิลด์ทั้งหมดเป็นแบบอ่านอย่างเดียว แต่ฉันคิดว่านี่เป็นแนวทางที่โง่เขลาและอาจทำให้เกิดปัญหาเช่นการอนุญาตข้างต้น...
โปรแกรมเมอร์ Django โดยเฉลี่ยอย่างฉันจะได้รับสิทธิ์ในการดูอย่างเดียวได้อย่างไร และที่สำคัญที่สุด ฉันจะกำจัดลิงก์ "เพิ่มอีก A" ที่ด้านล่างของแบบฟอร์มแก้ไขของผู้ดูแลระบบได้อย่างไร
ขอบคุณล่วงหน้า!