我是Django和Python的新手,所以也许我的问题可能很愚蠢,但是..
我正在使用Django-Activity-Stream记录用户在页面上的操作。
现在,我正在尝试建立一个页面,在该页面上,我将有一个漂亮的图形,向我显示用户根据操作和日期进行了什么操作。
到目前为止,到目前为止,我使用原始的sql查询来完成此操作,但是由于不应该这样使用Django,因此我想计算由分配给它的动词过滤的操作。
我的原始查询如下:
cursor = connection.cursor()
cursor.execute("SELECT COUNT(id) FROM actstream_action WHERE verb = %s "
"AND '2018-06-01' <= timestamp AND '2018-06-30' >= timestamp", ['User created'])
row = cursor.fetchone()
return row[0]
我希望有人能帮助我! 预先感谢
答案 0 :(得分:1)
您可以导入actstream.models.Action
类并对其进行查询。
例如,要获取在{strong> 2018年9月20日至24日之间生成的动词 添加了新帖子 的所有动作的queryset
, / strong>,您可以这样做
import datetime
from actstream.models import Action
start = datetime.datetime(2018, 9, 20)
end = datetime.datetime(2018, 9, 24)
actions = Action.objects.filter(verb='added new post', timestamp__gt=start, timestamp__lt=end)