2012-06-25 26 views
1

可能重複:
Getting 「Permission denied」 page in the admin, while user has permission如何刪除Django shell中給定用戶的對象?

我有some issues with permissions,所以我想看看有什麼從shell去。

我可以用給定的用戶啓動shell嗎?

或者我可以從shell中刪除一個對象,就像我用給定的用戶連接到管理員一樣?

基本上,當用戶真正擁有權限時,如何嘗試刪除對象時,如何知道爲什麼我會收到「Permission denied」的頁面?

回答

3

權限只能由您的業務邏輯強制執行,因此在shell中使用正常的Django ORM語法將完全繞過任何限制。

尋找元素,將取決於它如何與用戶,但假設一個ForeignKey稱爲user

my_obj = MyObject.objects.filter(user__username='whatever') 
+0

我的問題並不清楚:我想從外殼刪除對象,因爲如果我是與給定用戶連接到管理員。 – jul

+0

那麼我的答案有什麼問題呢?如果你有一個用戶名爲「whatever」的用戶,那麼使用我的代碼將允許你獲得相關的對象並刪除它。 –

+0

我的模型沒有字段'user'。我想在shell中實現的就像使用不同的用戶在admin中登錄並嘗試刪除一個對象。 – jul

相關問題