【问题标题】:drupal rules user account unchangeddrupal 规则用户帐户不变
【发布时间】:2013-09-11 01:48:28
【问题描述】:

我正在使用 Drupal 7 + 规则 2,并希望创建一个规则,在用户的角色从一个角色更改为另一个角色时向用户显示一条消息。我正在尝试在数据比较条件下使用“帐户未更改”,但没有任何运气。我的配置如下,但是,使用“未更改”功能对我来说是陌生的,我不确定我是否走在正确的轨道上。

  • 事件:更新现有用户帐户后
  • 条件:
    • 数据比较 - account-unchanged:roles equals RoleA
    • 数据比较 - account:roles equals RoleB
  • 操作:在网站上显示消息=角色已更改!!!

如前所述,当将具有 RoleA 的用户更新为具有 RoleB 时,这不会产生任何结果,并且在规则调试器中,条件始终被评估为 FALSE。

如果有比上述替代/更好的方法来实现这一点,我将不胜感激切换到正确的轨道:)

非常感谢!

【问题讨论】:

    标签: drupal drupal-7 drupal-rules


    【解决方案1】:

    能够回答我自己的问题!

    • 事件:更新现有用户帐户后
    • 条件:
      • 数据 > 列表包含项目 - LIST: account-unchanged:roles, ITEM RoleA
      • 数据 > 列表包含项目 - LIST: account:roles, ITEM RoleB
    • 操作:在网站上显示消息=角色已更改!!!

    如果您在角色从一个角色更改为另一个角色时特别想要一条消息,而不是简单地添加,请添加另一个条件但 NEGATE 它。在我的示例中,我会添加:

    • 数据 > 列表包含项目 - LIST: account-unchanged:roles, ITEM RoleB (Check NEGATE)
    • 数据 > 列表包含项目 - LIST: account:roles, ITEM RoleA (Check NEGATE)

    请参阅https://groups.drupal.org/node/94379#comment-631148 以供参考。我一直专注于那里的 VBO 答案,并将此评论与该方法结合使用,但仍然遇到了麻烦。刚才还想自己看……瞧!

    希望这对某人有所帮助!

    【讨论】:

      【解决方案2】:

      除了 arikiera 的回答,如果您想检查用户是否已撤销角色,您可以使用:

      • 数据 > 列表包含项目 - LIST: account-unchanged:roles, ITEM RoleA
      • 数据 > 列表包含项目 - 列表:帐户:角色,项目 RoleB(检查 否定)

      我使用它向子用户模块添加了一些规则,如果父用户的角色被撤销,它将从父用户的子用户中删除特定角色。如果您要构建的网站具有可以添加自己的子用户的公司帐户,这将非常有用。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-07-20
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多