我正在为CKAN开发一个插件,需要在更新或创建资源时触发一个函数。你知道吗
修改资源时,它会通过更改上次修改的时间来影响父数据集。每次添加/修改资源时,我都要更改日期。你知道吗
当我更新一个资源时,我想也要更新数据集,我希望在IPackageController中有一个after\u update()调用。这是在编辑资源后使用管理界面时的行为IPackageController.after\更新()被触发。你知道吗
调用API是另一回事,调用
^{pr1}根本不会触发该事件$import ckan.plugins as plugins
class MyControllerPlugin(plugins.SingletonPlugin):
plugins.implements(plugins.IPackageController, inherit=True)
def after_create(self, context, resource):
print "============== AFTER CREATE"
def after_update(self, context, resource):
print "============== AFTER UPDATE"
如何通过API触发此事件? 谢谢
调用/api/3/action/resource\u update不会触发IPackageController的after\u update函数,因为正在更新的是资源,而不是包。你知道吗
如果您调用/api/3/action/package\u update,应该调用它吗?你知道吗
或者可以使用IResourceController的after\u update来处理更新资源的时间。你知道吗
相关问题 更多 >
编程相关推荐