Typo3 类型3:将fe_用户映射到fe_用户的父记录

Typo3 类型3:将fe_用户映射到fe_用户的父记录,typo3,extbase,typo3-8.x,Typo3,Extbase,Typo3 8.x,在自定义扩展中,我使用字段“manager”扩展了fe_users表。此字段包含用户的boss 现在,我想将父记录的字段“tx_igldapssoauth_dn”(来自)的值保存在字段“manager”中,而不是保存在“uid”中 我的模型是这样的: <?php namespace Vendor\Extension\Domain\Model; class FrontendUser extends \TYPO3\CMS\Extbase\Domain\Model\FrontendUser {

在自定义扩展中,我使用字段“manager”扩展了fe_users表。此字段包含用户的boss

现在,我想将父记录的字段“tx_igldapssoauth_dn”(来自)的值保存在字段“manager”中,而不是保存在“uid”中

我的模型是这样的:

<?php
namespace Vendor\Extension\Domain\Model;

class FrontendUser extends \TYPO3\CMS\Extbase\Domain\Model\FrontendUser
{

    /**
     * DN of the users manager
     *
     * @var Vendor\Extension\Domain\Model\FrontendUser
     * @lazy
     */
    protected $manager = '';

    /**
     * Returns the manager
     *
     * @return Vendor\Extension\Domain\Model\FrontendUser $manager
     */
    public function getManager()
    {
        return $this->manager;
    }

    /**
     * Sets the manager
     *
     * @param Vendor\Extension\Domain\Model\FrontendUser $manager
     * @return void
     */
    public function setManager($manager)
    {
        $this->manager = $manager;
    }
}
这工作正常,并返回父记录。但这会将父记录的“uid”保存在列“manager”中,而不是字段“tx_igldapssoauth_dn”的值

那么,为了在字段“manager”而不是“uid”中保存“tx_igldapssoauth_dn”的值,需要配置或更改什么

编辑(更详细的信息)

字段“manager”的值由LDAP(它是父用户、boss的DN)以及“tx_igldapssoauth_DN”填充,后者是用户本身的DN。因此,“tx_igldapssoauth_dn”是唯一的值,可以与条目的uid进行比较

我的问题不是将所需的值保存到字段“manager”,而是将字段“manger”与字段“tx_igldapssoauth_dn”连接起来


因此,如果记录上的字段“manager”包含值
CN=Firstname Lastname,OU=Department,DC=example,DC=net
,它应该连接到字段“tx_igldapssoauth\dn”中具有相同值(
CN=Firstname Lastname,OU=Department,DC=example,DC=net
)的记录。我认为这样映射是不明智的。因为
tx\u igldapssoauth\u dn
不是唯一键-
uid
是唯一键。使用
fe\u users.uid
值时,我发现没有问题。 您可以使用此uid获取fe_用户对象,然后从中获取所需的值

您可以使用类似于:

[...]
$yourFrontendUser->getManager()->getTheValueYouWant();
[...]

请尝试使用类型为“passthrough”的字段。我已在问题中添加了更多信息。我的问题不是将值保存到字段
manager
,而是将字段
manager
与字段
tx\u igldapssoauth\u dn
连接起来。我已经用字段类型
inline
外来字段
做了一些实验。但是到目前为止没有成功:-(我在我的问题中添加了一些更多的信息。字段
tx\u igldapssoauth\u dn
是唯一的。所以基本上我的问题是:是否真的不可能将字段
manager
与字段
tx\u igldapssoauth\u dn
连接起来?
[...]
$yourFrontendUser->getManager()->getTheValueYouWant();
[...]