TYPO3 Extbase:检查数据库条目是否已存在

时间:2012-12-04 11:45:56

标签: database typo3 extbase

如何使用extbase进行数据库查询以检查数据库条目是否已存在?我知道如何使用php而不是使用extbase语法。

我想将用户添加到数据库中。这样可行。但只有在regId不存在的情况下才应添加用户。

到目前为止,这是我的代码:

/**
 * action registerDevice  
 * @param Tx_xxx_Domain_Repository_UserRepository $muserRepository 
 * @return void
 */

public function registerDeviceAction(){

    $userRepository = $this->objectManager->get('Tx_xxx_Domain_Repository_UserRepository');
    $user = $this->objectManager->create('Tx_xxx_Domain_Model_User');

    $allUser = $this->userRepository->findAll();

    if ( isset($_POST["regId"]) && $_GET['os'] ) {

        $regDevice = $_POST["regId"];
        $regMobileOs = $_GET["os"];


        $user->setMobileOs( $regMobileOs );
        $user->setFirstName('TEST');
        $user->setRegId( $regDevice );  



        $this->userRepository->add($user);

        $persistenceManager = t3lib_div::makeInstance('Tx_Extbase_Persistence_Manager');
        $persistenceManager->persistAll();


        }

    }

非常感谢! :)

祝你好运

1 个答案:

答案 0 :(得分:1)

从Extbase 1.1开始,您可以使用魔术方法find(One)ByPropertycountByProperty

因此,如果不创建新方法,您可以使用以下内容:

if(!$this->someRepository->countByRegId($regId)) {
    // there isnt a object with $regId yet
}