2016-10-09 4 views
0

에 액세스 세션 내가 장고 테스트에 RequestFactory를 사용하고, 나는 세션 변수에 액세스 할 수있는 올바른 방법을 찾을 수 없습니다, 나는 self.factory._session["zip_id"] 또는 self.factory.session["zip_id"]을하려고 할 때 다음과 같은 오류를 받고 있어요.장고 테스트 - RequestFactory

====================================================================== 
ERROR: test_middleware (dj_geo.tests.IPToZipMiddleWareTest) 
---------------------------------------------------------------------- 
Traceback (most recent call last): 
    File "c:\dj_site_test\dj_geo\tests.py", line 36, in test_middleware 
    assert self.factory._session["zip_id"] != None 
AttributeError: 'RequestFactory' object has no attribute '_session' 

---------------------------------------------------------------------- 



@override_settings(MIDDLEWARE_CLASSES=(
    'dj_geo.middleware.IPToZipMiddleWare' 
)) 
class IPToZipMiddleWareTest(TestCase): 

    def test_middleware(self): 
     Zipcode.syncdb() 
     assert Zipcode.objects.all().count() > 0 

     self.factory = RequestFactory() 
     self.request = self.factory.get('/', {}, **{'REMOTE_ADDR':'108.31.178.99'}) 
     assert self.factory._session["zip_id"] != None 
     assert self.factory._session["zip_id"] != "" 

답변

1

당신은 내가 정의 여기에 requet 어떻게 사용합니까 RequestFactory

self.factory = Client() 
+0

을 이것에 대한 Client를 사용하는 대신해야합니까? 감사! – user1187968

+0

@ user1187968 사용자 정의 요청은 무엇입니까? –

관련 문제