Sprawdzenie ograniczenia klucza obcego Codeigniter

Najpierw wyjaśnię strukturę tabeli:

<code>+-----------+--------------+------+-----+---------+----------------+
| Field     | Type         | Null | Key | Default | Extra          |
+-----------+--------------+------+-----+---------+----------------+
| id        | int(11)      | NO   | PRI | NULL    | auto_increment |
| firstname | varchar(255) | NO   |     | NULL    |                |
| name      | varchar(255) | NO   |     | NULL    |                |
+-----------+--------------+------+-----+---------+----------------+
</code>

Pole id jest odwoływane z innej tabeli za pomocą klucza obcego.

Powiedz, że w moim modelu mam taką funkcję:

<code>public function delete_user($id) {
    return $this->db->delete('users', array('id' => $id));
}
</code>

Gdy ten użytkownik jest przywoływany z innej tabeli, powinien zgłosić błąd. „Złe” jest to, że Codeigniter faktycznie pokazuje ten błąd na pełnej stronie:

<code>Error Number: 1451

Cannot delete or update a parent row: a foreign key constraint fails (`testing`.`users_link`, CONSTRAINT `users_link_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`))

DELETE FROM `users` WHERE `id` = '1'
</code>

Czy istnieje sposób, aby funkcja delete_user zwróciła FALSE zamiast pokazywać błąd? Chcę powiadomić użytkownika, że ​​najpierw muszą zrobić coś innego. Próbowałem użyć transakcji i zwrócić transakcję_status, ale to nadal generuje błąd.

questionAnswers(1)

yourAnswerToTheQuestion