用户不会从Liferay DB中删除

时间:2013-09-26 07:59:08

标签: liferay liferay-6

我已从Liferay UI中删除了用户。有时候它要求停用然后删除。有些时候只能停用。并且用户不会始终使用db。因此,同样用户的娱乐是不可能的,因为它会抛出错误,例如"电子邮件地址已经存在或者用户名存在"。

为什么用户从UI删除后没有从DB中删除?

我正在使用liferay-portal-6.1.1-ce-ga2。

如何解决这个问题?

3 个答案:

答案 0 :(得分:11)

DeactivateDelete是两种不同的功能。

当您Deactivate用户仍在数据库中时,只有status更改为停用。这被称为soft-delete或逻辑删除,即用户停用将无法登录,也不会出现在任何搜索等中。但优点是您可以让用户恢复生机只需Activate - 用户。因此,这不需要您重新创建用户,也有助于保持用户的历史记录或操作。

如果要从数据库中删除用户,请转到控制面板用户&组织→单击搜索所有用户→通过高级或基本搜索搜索用户→选择用户→单击停用

在此之后,执行高级搜索→选择状态为非活动→您将找到所有已取消激活的用户→选择它们并单击删除

希望这有帮助。


修改

(感谢@hudolejev在下面的评论中指出这一点)

另请注意,以下属性设置为true以删除portal-ext.properties中的用户,默认情况下为true

#
# Set this to false if users cannot be deleted.
#
users.delete=true

答案 1 :(得分:1)

手动删除:

如果您想直接从数据库中删除,请确保删除下一个表中与该用户相关的所有记录:

DELETE FROM Users_UserGroups WHERE userId = 'userid';
DELETE FROM Users_Roles WHERE userId = 'userid';
DELETE FROM Users_Orgs WHERE userId = 'userid';
DELETE FROM Contact_ WHERE userId = 'userid';
DELETE FROM Group_ WHERE classPK = 'userid';
DELETE FROM User_ WHERE userId = 'userid';

答案 2 :(得分:0)

当您刚刚取消激活用户时,它仍然存在于Liferay数据库中,因此在每次取消激活后,尝试找到已停用的用户,然后将其删除。

如果您在停用后未找到用户,请尝试转到服务器管理并重新索引所有搜索索引。然后再试一次。

此致 和Manish