2012-05-31 50 views
1

我正在设置我们的项目,以便与称为Endicia的运输平台集成,该平台可以在运输包裹时将新行插入我们的数据库。如何检测并响应django项目中的数据库更改(INSERT)?

如何在python插入新行时检测到?

我现在的解决方案是查询数据库每30秒左右的新行...有没有另一种解决方案发送信号从Postgres到Python?

+0

一些想法[here](http://postgresql.1045698.n5 .nabble.com /如何到获得-A-信号来自该数据库时-A-INSERT - 到 - 是 - 做 - tp5521511p5521949.html)。 – dgel

回答

1

您将设置由manage.py文件运行的custom command

你会把它放在`yourapp/management/commands /'文件夹中。请确保将init .py文件添加到管理和命令文件夹,否则该命令将不起作用。然后你创建自定义命令的代码。

然后,看到这个related question about running a shell script when changes are made to a postgres database。那里的答案是使用PL/sh。你需要自己计算出这部分内容,但基本上是这样做的,但最终的结果是脚本应该调用类似/path/to/app/manage.py command_name

+0

感谢shell脚本触发信息! –

相关问题