Ich habe zwei Senden-Schaltflächen innerhalb eines Formulars, und ich muss erkennen, welche eine bestimmte Aktion ausgelöst wird. Leider ist meine Prüfung nicht zu erfassen, die Absenden-Button geklickt wurde:Laravel Request-Fassade erkennt mehrere Senden-Schaltflächen nicht
Form:
<button type="submit" name="complete">
<span class="btn-label">
<i class="glyphicon glyphicon-save"></i>
</span> Submit Audit
</button>
<button type="submit" name="pending">
<span class="btn-label">
<i class="glyphicon glyphicon-save"></i>
</span> Save Audit
</button>
Controller:
public function updateAudit(Request $request, $id)
{
....
if ($request->has('complete')) {
$auditCompleteCheck->completed = 1;
$auditCompleteCheck->save();
}
}
Wenn ich Ausgang $request
ich die complete
sehen Schaltfläche wie: "complete" => ""
und ähnlich mit ausstehende: "pending" => ""
.
Aber wenn ich dd($request->has('complete'));
, es immer gibt false zurück, obwohl ich es in der Anfrage Tasche sehen kann.
Warum funktioniert der ->has
nicht?
Vielen Dank.
Die [ 'hat()'] (https://github.com/laravel/ framework/blob/5.4/src/Illuminate/Http/Bedenken/InteractsWithInput.php # L88) Methode wird immer false für Schlüssel mit leerer Eingabe zurückgeben. – jfadich