2016-06-17 84 views

回答

1

從djangocms-意見的文件,它沒有看起來可能通過使用由djangocms-comments提供的股票代碼。代碼類似於https://github.com/Nekmo/djangocms-comments/blob/master/djangocms_comments/cms_plugins.py#L23的模板標籤應該這樣做。

在您的peoject中安裝的任何應用程序中創建一個templatetags包,然後創建一個模塊文件(例如:comments_tags.py)。在這個文件中加入:

from django import template 

register = template.Library() 

@register.simple_tag(request_context=True) 
def count_comments_for_post(context, post): 
    obj = get_object_from_context(context) 
    request = context['request'] 
    ct = ContentType.objects.get_for_model(obj) 
    return self.get_comments(request, obj, ct).count() 

負荷comments_tags在博客模板,像{% count_comments_for_post post %}一些地方要用於文章的評論數。

注意,代碼我沒有使用djangocms,註釋,當前不能確認其

+0

對不起,我是小白..我應該加入這樣的代碼,什麼是它做的是未經檢驗的?我試圖在cms_plugin(djangocms-commit)https://zapodaj.net/102fce3808b86.png.html的底部加上它,但它在'@register'上返回失敗。 – Darex1991

+0

在堆棧溢出評論中很難解釋自定義模板標籤:)您可以檢查關於該主題的django文檔:https://docs.djangoproject.com/en/1.9/howto/custom-template-tags/#simple-標籤 – yakky

+0

好吧然後:1)它的代碼爲djangocms評論? 2)它應該在cms_plugin.py? 3)具有此功能的代碼應該在djangocms佔位符上可見,如插件? – Darex1991