我的測試失敗說get()返回2個權限..但我沒有在任何地方分配2個權限。在我的視圖m從django.contrib.auth.mixins繼承PermissionRequiredMixin並分配權限。以下是我的測試setUp代碼,其中顯示錯誤:MultipleObjectsReturned:get()返回多個權限 - 返回2
def setUp(self):
self.material = MaterialFactory.create()
self.material_reorder = MaterialFactory.create(
opening_stock=500, reorder_qty=1000)
self.user = User.objects.create_user(
'admin', '[email protected]', 'admin')
self.user.user_permissions.add(
Permission.objects.get(codename="add_material"))
錯誤:test_modal_create_view(stores.tests.test_views.ReelMaterialModalCreateViewTest) ---------------------------------- ------------------------------------ 回溯(最近通話最後): 文件「/ home /anand/base/tests/mixin.py「,第95行,在setUp中 Permission.objects.get(codename = self.permission_codename).id) 文件」/home/anand/Envs/local/lib/python2.7 /site-packages/django/db/models/manager.py「,第122行,在manager_method中 return getattr(self.get_queryset(),name)(* args,** kwargs) MultipleObjectsReturned:get()返回多於一個權限 - 它返回2! –
使用[編輯](http://stackoverflow.com/posts/36746710/編輯)按鈕更新您的問題。但錯誤是顯而易見的。您有兩個具有相同代碼名稱的權限。你期望在這種情況下會發生什麼? – Sayse
我使用的是默認的django權限:像這樣permission_required ='stores.add_material'在我的意見。沒有超過一個權限 –