2012-03-02 93 views
1

我嘗試在模型裝飾標題如果條目是獨家:裝飾領域

class Entry(models.Model): 
    ... 
    title = models.CharField(u'Title', max_length=255) 
    is_exclusive = models.BooleanField(u'Exclusive', default=False) 
    def get_title(self): 
     if self.is_exclusive: 
      return u'%s <span class="exculsive">exculsive</span>' % self.title 
     else: 
      return self.title 

    get_title.allow_tags = True 

在模板中,當我寫{{ entry.get_title }}我得到:在渲染過的版本Some entry title <span class="exculsive">exclusive</span> - HTML標籤即使我在get_title()上設置allow_tags爲真。

+0

個人而言,我覺得不適合將HTML放入模型中。您的目的最好是使用包含標籤或過濾器。也許,我對MVC方面的事情太嚴格了,但是恕我直言的模型應該是關於數據的一切,而不是如何表示數據。 – 2012-03-02 15:46:06

回答