Da ich nicht jedesmal eine IF/ELSE- oder CASE-Anfrage machen möchte, finde ich einen dynamischen Funktionsaufruf wesentlich praktischer, in dem ich die gewünschte Aktion mit dem Modul zusammen setze.
Möchte ich einen User speichern, so gäbe es die Funtktionen createUser() und updateUser(). Vom Formular bekomme ich ein Feld mit dem Namen action, welches vom Typ hidden ist und mal den Wert create und mal update enthält.
Der dynamisch Aufruf wäre dann #form.action#User()
Der Vorteil hierbei ist, dass ich beliebige Actionen (deleteUser(),listUser() etc.) hinzufügen kann, ohne den bestehenden Code „anfassen“ zu müssen. Auch wird der Code in jedem Fall immer nur eine Zeile lang sein.
Der Aufruf für die Funktion ist dann per cfinvoke:
per cfset:
Auf Wunsch bekommt man bei beidem auch einen Wert zurück:
oder per cfset