网站上的经常出促销规则经常被篡改了导致促销出现问题,出了事情后也没有人敢承认是自己改的,于是有一个小任务是给magento的规则加一个创建人,创建时间,最后修改人,最后修改时间等信息
这里在salesrule表加了4个字段,升级脚本:
|
|
php代码
|
|
now()是我们自己写的一个小函数,方便设置时间
|
|
后台所有的保存动作,都设置last_mofified_by
和last_modified_at
信息,这里可以用isObjectNew()来判断是否是新创建的规则,如果是的还要设置created_by
和created_at
信息
我是把这些字段的设置放在后台规则编辑saveAction()里面,如果放在rule的_beforeSave()方法里面,会导致只rule保存时会修改这些字段,比如生成新订单(如果订单中应用了规则,会更新规则的使用次数),这个并不是我想要的。
题外话:我这里直接在规则主表加这几个字段当成rule的属性来处理,方便以后在其它地方使用,如果只是想增加修改记录,可以通过配置logging.xml来实现