2014-07-07 2 views
1

django 클래스 기반보기에서 동적 클래스 이름을 가져 오려고합니다.지원되지 않는 형식 문자 '_'(0x5f) 인덱스 1

여기 내 수업이 있습니다.

class ProductDetailView(TemplateView): 
     template_name = "%_%_details.html" 
     def get_template_names(self,tmp_name,tmp_name2): 
       return [self.template_name % tmp_name,tmp_name2] 
     def get_context_data(self, **kwargs): 
      context = super(ProductDetailView, self).get_context_data(**kwargs) 
      platform = self.request.GET.get('platform') 
      if platform == "AMAZON": 
       asin = self.request.GET.get('asin') 
       if asin: 
         #products = amazon.search(Keywords=q, SearchIndex='All') 
         products= amazon.lookup(ItemId=asin) 
         template_name = self.get_template_names('amazon','product') 
         context['products'] = products 

나는 템플릿 amazon_product_details.html을 accees 싶다.

위의보기에 액세스하는 동안 오류 unsupported format character '_' (0x5f) at index 1이 표시됩니다.

인용구를 urlib 시도했지만 그 또한 작동하지 않습니다.

내가 여기서 잘못하고있는 것이 있는지 알려 주시기 바랍니다.

답변

4

표준 C 스타일 문자열 보간을 사용하려는 것처럼 보이지만 실제 서식 지정 문자가 누락되었습니다.

template_name = "%s_%s_details.html" 
관련 문제