1. listenery beforeXXX w klasie domenowej np.:
class Demo {
static constraints = {
}
String name
transient beforeUpdate = {
throw new RuntimeException('update not allowed')
}
}
2. zwracanie kodu błędu z kontrolera dla niedozwolonych metod, np.:
def delete(Long id) {
response.sendError(405)
}
Natomiast jeśli chcemy tylko wyłączyć z edycji w widoku wygenerowanym ze scaffoldingu jakieś pole klasy domenowe dostępna jest opcja w constrains:
class Demo {
static constraints = {
name(editable: false)
}
String name
}
Brak komentarzy:
Prześlij komentarz