0

我正在使用Pocket API将用户的数据和文章存储到使用 Django 框架的 SQLite 数据库中。如何有效地保持数据库与从 API 接收的数据之间的一致性?我计划每 24 小时更新一次数据库。

4

1 回答 1

0

chron jobs应该很简单。如果您已经有一个具有从 Pocket API 获取数据并解析它的逻辑的模型,那么它很简单:

class MyCronJob(CronJobBase):
    RUN_EVERY_MINS = 120 # every 2 hours

    schedule = Schedule(run_every_mins=RUN_EVERY_MINS)
    code = 'my_app.my_cron_job'    # a unique code

    def do(self):
        data = fetch_your_data()
        save_data(data)

如果您还没有解析逻辑,我建议您使用Django Rest Framework 序列化程序。使用序列化器很简单,保存数据可以缩小到:

def save_data(json_data):
    serializer = YourPocketDataSerializer(json_data)
    serializer.save()
于 2020-01-10T08:37:19.317 回答