silverstripe-4 - 如何检测 SilverStripe 4 中的成员组更改
问题描述
我有一个DataExtension
会员,MyMemberExtension
。
我正在尝试使用 onBeforeWrite 和 onAfterWrite in检测用户从一个pending-users
组移动到一个组。但是,组更改似乎发生在此处的 onBeforeWrite 之前。public-users
MyMemberExtension
在MyMemberExtension
我添加了一个$IsPending
班级成员。
public function onBeforeWrite()
{
if ($this->owner->inGroup('pending-users'))
{
self::$isPending = true;
}
}
和
public function onAfterWrite()
{
if ($this->owner->inGroup('public-users') and self::$isPending)
{
# Moved from the pending to public - send email
}
}
我也尝试过使用$this->owner->getChangedFields();
,但 Groups 不是数组的一部分。
我如何能够检测到用户从 更改pending-users
为public-users
?
解决方案
推荐阅读
- javascript - 如何在 Vuejs 中使用 for 循环填充数组
- azure - Azure Pipeline 基于文件的触发器和标记
- vue.js - Vuetify v-card 在 IE11 上溢出
- elasticsearch - 如何使用定义的分析器和分片在 Elasticsearch 中创建索引?
- c# - 加载 .NET 程序集期间 System.IO.FileLoadException:错误 0x8007007a
- asp.net - 如何在 aspx 中转换返回的 asmx 类
- python - OSError:未找到 PortAudio 库
- python - 如何对据称丢失的模块 (google.oauth2) 进行故障排除?
- makefile - Makefile 目标内的条件
- android-emulator - 模拟器pulseaudio访问被拒绝