This method performs the following steps in order:
1. call BaseActiveRecord::beforeDelete. If the method returns false, it will skip the
rest of the steps;
2. delete the record from the database;
3. call BaseActiveRecord::afterDelete.
In the above step 1 and 3, events named [[EVENT_BEFORE_DELETE]] and [[EVENT_AFTER_DELETE]]
will be raised by the corresponding methods.