2012-10-07 2 views
2

는 :얻기 오류 search_products()가 소요 적어도 2 개 인자 (주어진 2) 오류를 받고 있어요 어떤 이유

TypeError: search_products() takes at least 2 arguments (2 given) 

이상한 것은 내가 두 개의 별도의 장소에서 같은 API 호출을 것입니다 - 하나는 Model 클래스 중 하나에 배치 한 함수입니다. 다른 페이지보기. 모델 클래스에있는 함수는 잘 작동하지만 View 함수에있는 함수는 오류를 던지고 있습니다. 내가 Models.py에서이 동일한 코드를 작성할 때, 모두가 잘 작동, 다시

searchproducts=api.API().search_products(query="myproduct") 

:

다음은 Views.py 내 코드입니다.

def search_products(self, category_id, query="", start=0, limit=10, filter=None, ranged_filters=None, sort_by=None): 

어떻게 왜 이런 일이의 루트를 찾기 위해 깊이를 발굴 할 수 다음과 같이 api.py의 API 클래스의

내 search_products 기능은 무엇입니까?

역 추적 : search_products의 당신의 정의에

/Users/me/Desktop/myenv2/lib/python2.7/site-packages/django/core/handlers/base.py in get_response 
       # Apply view middleware 
       for middleware_method in self._view_middleware: 
        response = middleware_method(request, callback, callback_args, callback_kwargs) 
        if response: 
         return response 
       try: 
        response = callback(request, *callback_args, **callback_kwargs) ... 
       except Exception, e: 
        # If the view raised an exception, run it through exception 
        # middleware, and if the exception middleware returns a 
        # response, use that. Otherwise, reraise the exception. 
        for middleware_method in self._exception_middleware: 
         response = middleware_method(request, e) 

답변

3

당신은 필수로 category_id이, 당신은 인수로이 메서드를 호출 할 때 것을 제공되지 않습니다. category_id의 기본값을 제공하거나 적절한 인수를 전달하여 문제를 해결하십시오.