首页 文章

showAction:通过用户名而不是uid查找fe_user条目

提问于
浏览
0

我使用Extension Builder创建了我自己的(Typo3 6.2)扩展以扩展fe_users并且一切正常但我希望能够使用基于 username 而不是用户的 uid 的showAction .

目标只是能够在前端调用控制器,如下所示:

my.domain.com/users?tx_crilcq_crilcqmember[username]=johndoe&tx_crilcq_crilcqmember[action]=show

而不是这个:

my.domain.com/users?tx_crilcq_crilcqmember[member]=2&tx_crilcq_crilcqmember[action]=show

起初我以为我必须修改扩展存储库(类MemberRepository extends \ TYPO3 \ CMS \ Extbase \ Persistence \ Repository),但似乎它用于返回一个条目数组而不引用单个实例的请求 . 不知道我对此是否正确,但我的感觉是我需要修改的东西是其他地方 .

有人知道吗?

1 回答

  • 3

    Extbase存储库具有魔术方法 findBy[property]findOneBy[property]countBy[property] ,它们通过给定属性返回/计数对象 .

    您可以更改您的show动作,如下所示:

    /**
     * @param string $username
     * @return void
     */
    public function showAction($username) {
        $user = $this->memberClassRepository->findOneByUsername($username);
        $this->view->assign('user', $user);
    }
    

相关问题