【问题标题】:Create Project Log(History) Module in symfony with event dispatchers使用事件调度器在 symfony 中创建项目日志(历史)模块
【发布时间】:2012-09-20 10:25:27
【问题描述】:

我正在 Symfony 中开发一个项目管理工具,现在我正在创建一个模块来记录日志,即捕获每个事件,例如新项目创建、任务创建、任务状态更改、项目和任务的删除,等等。

我有一个日志表,我计划在发生上述任何事件时插入新行。但为此,我需要进入每个控制器并调用日志模型来执行插入查询。几乎就像我要再次处理控制器中的所有操作以附加此代码。有没有其他方法可以使用 Symfony 中的类事件调度器只调用一次模型。

【问题讨论】:

  • 您可以尝试使用 mysql 触发器,应用/删除触发器以启用/禁用模块

标签: php symfony1 propel


【解决方案1】:

很高兴您使用 Propel,有很多插件和/或行为可以跟踪您的对象发生了什么。我会给你一份我发现的清单:

【讨论】:

    【解决方案2】:

    JMSAOPBundle 正是这样做的。

    如果我可以建议的话,我认为最好为每个操作添加自定义事件,这样您就可以使用更多侦听器扩展您的应用程序而不会失去控制。如果你使用学说,你也可以使用doctrine event system

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-06
      • 2017-03-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多