不受支持的格式字符' _'索引1处的(0x5f)

时间:2014-07-07 14:06:21

标签: python django

我试图在基于django类的视图中获取动态类名。

这是我的班级。

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。

我在访问上述视图时收到错误unsupported format character '_' (0x5f) at index 1

我也尝试过urlib引用,但这也没有用。

请让我知道我在这里做错了什么。

1 个答案:

答案 0 :(得分:5)

您似乎正在尝试使用标准C风格的字符串插值,但是您错过了实际的格式字符。

template_name = "%s_%s_details.html"