如果有人在创建记录时将当前登录用户的用户 ID 记录到记录中,将不胜感激。
场景是这样的:
我已扩展用户实体以包含与组织实体的关联。
在有问题的主要实体中,我创建了两个关联属性:systemUser 和 organization。
这个想法是在他们创建新项目时设置用户 ID(不是用户名)和创建记录的用户的组织 ID。
我好像撞到了一堵砖墙。
任何该代码可能看起来的示例将不胜感激。
如果有人在创建记录时将当前登录用户的用户 ID 记录到记录中,将不胜感激。
场景是这样的:
我已扩展用户实体以包含与组织实体的关联。
在有问题的主要实体中,我创建了两个关联属性:systemUser 和 organization。
这个想法是在他们创建新项目时设置用户 ID(不是用户名)和创建记录的用户的组织 ID。
我好像撞到了一堵砖墙。
任何该代码可能看起来的示例将不胜感激。
您可以使用UserSessionSource
bean 获取当前登录的用户及其 ID:
@Inject
protected UserSessionSource userSessionSource;
User user = userSessionSource.getUserSession().getUser();
UUID userId = user.getId();
通过这种方式,您可以获得 id 然后将其设置为您的实体。为了在创建新实体时执行此操作,您可以使用实体侦听器https://doc.cuba-platform.com/manual-6.9/entity_listeners.html