如何使用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();
}
}
非常感谢! :)
祝你好运
答案 0 :(得分:1)
从Extbase 1.1开始,您可以使用魔术方法find(One)ByProperty
和countByProperty
。
因此,如果不创建新方法,您可以使用以下内容:
if(!$this->someRepository->countByRegId($regId)) {
// there isnt a object with $regId yet
}