2015-12-17 94 views
4

如何使用django_comments從Django GetStream保存活動,以及如何獲取此數據?謝謝!Django GetStream和Django評論

我已經實現與render_comment_form像https://django.readthedocs.org/en/1.4.X/ref/contrib/comments/ Django的評論,什麼,我想知道我怎麼可以保存活動GetStream,我怎麼能做出協商後保存感謝 謝謝你的人,但我有一些像即:

from django.db import models 
from fluent_comments.compat import CommentManager, Comment #, signals 
from fluent_comments.models import FluentComment 
from stream_django.activity import Activity 
from stream_django import feed_manager 
from django.db.models import signals 
from publications.models import Ad 

class ActivityComments(FluentComment, Activity): 
    pass 

    def __unicode__(self): 
     #return "%s COMENTA-->> %s" % (self.user.first_name, self.object_content.item) 
     return "%s COMENTA-->> %s" % (self.user.first_name, self.object_pk) 

    @property 
    def activity_object_attr(self): 
     return self 

    @property 
    def activity_actor_attr(self): 
     return self.user 

    @property 
    def activity_time(self): 
     return self.created 

    @property 
    def extra_activity_data(self): 
     return {'a': self.item} 

    @property 
    def activity_notify(self): 
     if self.object_content.item.seller.user != self.user: 
      target_feed = feed_manager.get_notification_feed(
       self.object_content.item.seller.user.id) 
      return [target_feed] 

    @classmethod 
    def apply_activity_notify(cls, sender, instance, using, **kwargs): 

     ad=Ad.objects.get(id=instance.object_pk) 
     comment = FluentComment.objects.get(id=instance.id) 
     comment.object_content = ad 
     comment.activity_notify 


""" 
signals 
""" 

signals.post_save.connect(ActivityComments.apply_activity_notify, sender=Comment) 

我用吼聲這個我可以註冊activiy,但是當我去getstram管理員,我可以什麼都不豔記。此外,另一個問題,當寄存器alredy製成,可我得到的活性與?:

enricher = Enrich() 
feed = feed_manager.get_feed('flat', user.id) 
activities = feed.get(limit=3)['results'] 
I hope your answer, Thanks. 
+0

嗨!謝謝,但我不能看管理員的活動,請檢查我的答案在下面請! –

回答

0

Django的評論允許您自定義用於存儲註釋的模式。

首先,你需要創建一個應用程序來保存Django的評論的定製和添加到您的settings.py

INSTALLED_APPS = [ 
    ... 
    'my_comment_app', 
] 

COMMENTS_APP = 'my_comment_app' 

然後在my_comment_app/models.py中,你需要註冊您的評論模型作爲流活動。

from django.db import models 
from django.contrib.comments.models import Comment 
from stream_django.activity import Activity 

class ActivityComment(Comment, Activity): 
    pass 

,那麼你需要註冊您的自定義應用程序Django的評論,要做到這一點添加到my_comment_app/__ init__.py這個代碼

from my_comment_app.models import ActivityComment 


def get_model(): 
    return ActivityComment 
+0

謝謝你,但我有這樣的事情: –

+0

嘿,男人!你知道如何將活動添加到標籤通知?這些活動是下面的另一個,我會感謝你的答案。 –

+0

@PabloAlejandro我認爲最好的是,如果你使用相同的標籤創建一個新的問題,請隨時在那裏ping我;) –