Вам необходимо удалить купон из родительской коллекции.Вы можете сделать это вручную в службе, где вы удаляете купон, или можете использовать события гибернации для этого.Я не думаю, что вы можете иметь каскад сделать это.Самое близкое, что вы можете получить, это «delete-orphan», но вам все равно нужно разорвать связь, чтобы это работало.
См. Раздел 5.5.1 руководства.
http://grails.org/doc/latest/
По сути, вы можете добавить метод beforeDelete к вашему классу Coupon, который удалит его ссылку из своих родителей.
grails достаточно умен, чтобы запустить метод beforeDelete, как вы уже догадались, до удаления купона.Это хорошее место для разрыва связей.
Независимо от того, делаете ли вы это «вручную» в классе службы или домена или используете события гибернации, код будет практически одинаковым.Убедитесь, что вы написали интеграционный тест для него ...