Frage

Ich bin mit dem Grails Webflow Plugin. Hier sind die Domain-Objekte Ich arbeite mit:

class Foo implements Serializable {
    String fooProp1,
           fooProp2

    static constraints = {
        fooProp2 nullable: false
    }
}

class Bar implements Serializable {
    Foo fooObject

    static constraints = {
        fooObject nullable: false
    }
}

An einem Punkt in der Webflow, muss ich sicherstellen, dass fooObject.fooProp1 nicht null ist. Wenn ja, möchte ich einen Fehler werfen und zwingen den Benutzer mit einem Wert zu liefern. Ich habe versucht, validate () verwenden, dies zu tun (sowohl auf der Bar und Foo-Objekte), aber da fooProp1 die NULL-Werte zulassen hat: true Eigenschaft, es geht Validierung. Irgendwelche Ideen?

War es hilfreich?

Lösung

Sie können dies wahrscheinlich tun im Web Flow durch den folgenden Code anzupassen:

if(fooObject.fooProp1 == null) {
    fooObject.errors.rejectValue('fooProp1', 'nullable')
}

Das zweite Argument für diese Methode, 'nullable', die für Ihre Situation anders sein. Sie müssen nur an den Nachrichtencode gesetzt (von message.properties), um die Fehlermeldung angezeigt werden, die Sie wollen.

Haben Sie einen Blick hier für mehr Möglichkeiten, Verwendung reject() und rejectValue().

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top