Required argument is missing

Hallo zusammen,
habe ein Formular gebaut das eine Action aufrufen soll:

<f:form action="donate" objectName="post">
...

In meinem Controller habe ich eine entprechende Action:

 public function donateAction(Post $post){ ...

Wenn ich den submit-Button betätige erhalte ich folgende Fehlermeldung:
Required argument is missing
Also es wird irgendwo und irgendwie ein Argument erwartet - ich weiß aber nicht wo ich ich da das fehlende Argumet einbauen könnte.

Danke für eine Unterstützung.

LG Mark

Ohne irgendwelche Formularfelder wird der Post wahrscheinlich gar nicht gebaut…

Ohne irgendwelche Formularfelder wird der Post wahrscheinlich gar nicht gebaut…

Vielen Dank; ja genau das war es. Hatte mittels JavaScript dort input Felder eingebaut, die wurden aber nicht erkannt.
Allerdings wenn ich dort einen post-Parameter einbaue bleibt das Problem bestehen; also trotz Formularfelder

Post parameter? Achso Post object, inwiefern, also ein Beispiel wäre gut.

Wenn Du Fluid Forms mit Objects benutzt dann musst Du auch die f:form.xxx input Elemente benutzen und dann das via property den Namen der object property übergeben, der tatsächliche Name des Formfeldes wird dann erzeugt. So wie in deinem Template wird es nicht gehen.

Vielen Dank; genau das war das Problem. Jetzt habe ich gelöst, indem ich anstatt:

<input type = "hidden" name ="donate" value="" id="donateField">

das mit fluid ausgetauscht habe:

<f:form.hidden name ="donate" property="donate"	id="donateField" />

Ferner musste ich im Domain/Model/Post.php noch die $donate und getter & setter einbauen. Also jetzt funktioniert es.

Vielen Dank.

1 Like