У меня есть мнение, что выглядит следующим образом:Как проверить представление с пользовательским декоратором относятся к пользователю в django?
@login_required
@active_required()
def myView(request):
print 'in my view'
active_required декоратор клиент выглядит следующим образом:
def active_required():
def decorator(func):
def inner_decorator(request, *args, **kwargs):
my_user = request.user
if my_user.active:
return func(request, *args, **kwargs)
else:
return HttpResponseRedirect(reverse('activate'))
return wraps(func)(inner_decorator)
return decorator
Мой тест выглядит следующим образом:
def test_my_view(self):
self.client.login(username='user', password='11111111')
response = self.client.post(reverse('my-view'), data, follow=True)
self.assertEqual(response.status_code, 200)
я получаю следующее ошибка:
@active_required
TypeError: active_required() takes no arguments (1 given)
Если база данных, созданная в тесте, не содержит этого пользователя, который является активным, как его добавить? Или я получаю эту ошибку по другой причине?
Только для любопытства, что произойдет, если вы '' delete'() ', которые на' view'? –
Просто удалите() из декоратора и он должен работать. –