view.pyकेवल सुपरसियर के लिए दृश्य को सीमित कैसे करें?
@login_required
@permission_required('is_superuser')
def score_reset(request):
pass
url.py
url(r'^score-reset/$', score_reset, name='score-reset'),
मैं निम्नलिखित कोड है और मेरे आश्चर्य मैं अभी भी एक गैर सुपर उपयोगकर्ता के साथ लॉग इन होने के बावजूद समारोह मारा,। मैं एक अनुमति प्राप्त करने की उम्मीद कर रहा था।
मुझे क्या याद आ रही है?
btw, मैं एक नकली न जवाब के रूप में मुझे लगता है कि 'user_passes_test' एक मौजूदा Django डेकोरेटर के साथ ही तथ्य यह है कि' is_superuser है उल्लेख करने के लिए लिंक करने के बाद के रूप में इस अंकन नहीं कर रहा हूँ ' –
अनुमति नहीं है प्रश्न केवल सुपरसियर को प्रतिबंधित करने के लिए पूछता है। उदाहरण कोड @user_passes_test (lambda u: u.is_superuser) होना चाहिए – mhost
'user_passes_test' [उपरोक्त स्निपेट] का उपयोग करना काम करता है। लेकिन आप यह विचार करना चाहेंगे कि यह सभी गैर-सुपर उपयोगकर्ताओं के लिए लॉगिन पृष्ठ पर रीडायरेक्ट होगा, भले ही वे पहले ही लॉग इन हैं। आप नौकरी पाने के लिए अपना खुद का सजावटी लिखना चाह सकते हैं। – allsyed