2013-06-03 53 views
0

我有一些Django模型存储自定义日志和查询数据,我只想保留一段有限的时间(即30天的搜索数据或最多10,000个数据库行的记录数据)。这些模型用于可视化视图,所以不是我可以存储在文件中并让logrotate处理的东西。在Django中限制数据库记录的数量或年龄

Django中是否有任何内容来处理这个问题?

我可以创建一个使用SQLAlchemy定期修剪数据库的cron作业,或者创建一个管理员页面,在访问时修剪记录(通过视图代码),但是如果已经内置了某些内容Django为了处理有限的数据保留,使用它可能更有意义。

回答

2

为您的应用程序创建一个custom django-admin command清除旧记录,然后让cron定期运行它。我想你可以使用SQLAlchemy,但我不知道为什么你不会只使用django的ORM。

您的命令与django会话clearsessions命令非常相似。它的source code可能会有用。

+0

谢谢你的提示。 :) –