0
我有一個數據庫表如下。 Django:顯示DB數據只登錄用戶有多個過濾器
URL顯示DB數據重定向到這個頁面
url(r'^editinvoice/(?P<pk>\d+)/$',views.edit_invoice,name='editinvoice'),
template.html代碼爲
<a href="{% url "editinvoice" pk=invoices.id %}">{{ invoices.invoice_number }}</a></td>
invoices.id
是DB表上方的外鍵。
鏈接傳遞正確的包並且細節正確顯示。但是,如果我只是更改網址中的ID,即使我不是與用戶相關的信息,我也可以看到信息。 應該做什麼該信息應該可用登錄用戶只有當用戶如果它的擁有者。
我正在使用@login_required裝飾器。只有在用戶登錄後才能看到詳細信息。但作爲登錄後的用戶,您也可以看到我的詳細信息。 –
我編輯我的答案。 –
我用權限拒絕,但現在它的工作正常,用戶不能看到其他發票,但如何更改默認的Django錯誤,並提供一個乾淨的消息,如發票不存在? –