Skip to content
Snippets Groups Projects
Unverified Commit 9c9f8fa5 authored by Joas Schilling's avatar Joas Schilling
Browse files

Allow non integer ids in Entity Mapper

parent 0cf76aa2
No related branches found
No related tags found
No related merge requests found
......@@ -89,9 +89,11 @@ abstract class QBMapper {
public function delete(Entity $entity): Entity {
$qb = $this->db->getQueryBuilder();
$idType = $this->getParameterTypeForProperty($entity, 'id');
$qb->delete($this->tableName)
->where(
$qb->expr()->eq('id', $qb->createNamedParameter($entity->getId()))
$qb->expr()->eq('id', $qb->createNamedParameter($entity->getId(), $idType))
);
$qb->execute();
return $entity;
......@@ -126,6 +128,7 @@ abstract class QBMapper {
$qb->execute();
if($entity->id === null) {
// When autoincrement is used id is always an int
$entity->setId((int)$qb->getLastInsertId());
}
......@@ -191,8 +194,10 @@ abstract class QBMapper {
$qb->set($column, $qb->createNamedParameter($value, $type));
}
$idType = $this->getParameterTypeForProperty($entity, 'id');
$qb->where(
$qb->expr()->eq('id', $qb->createNamedParameter($id, IQueryBuilder::PARAM_INT))
$qb->expr()->eq('id', $qb->createNamedParameter($id, $idType))
);
$qb->execute();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment