Mazání
Definovanou entitu už máme vytvouřenou a uloženou. A co když jí naopak budeme potřebovat odstranit? Je to taktéž snadné:
$article = Content_Article::load( $some_id );
$article->delete();
Jedná se o stejný princip jako při ukládání. Tedy i mazání se postará o subentity hlavní entity, nebo o subentity subentity.
Je možné mazat pouze subentitu (například určitou jazykovou mutaci článku a podobně).
Opět je dobré mít na paměti události - po smazání může být nutné například odstranit (nebo přesunout) soubory co měly s entitou kontext a podobně. Opět by měl být dodržen princip zapouzdření a metoda delete() by měla zařídit vše potřebné.
Stejně jako ukládání i proces mazání je SQL transakce (pokud to backend umí), do které je zahrnuto mazání všech případných subenetit. K nastartování transakce dochází automaticky, k ukončení také a k tzv. rollback při případném selhání rovněž.
Selhání mazání vyhazuje výjimku.