409 Stimmen

Laravel Überprüfen, ob ein Datensatz vorhanden ist

Ich bin neu bei Laravel. Wie finde ich heraus, ob ein Datensatz vorhanden ist?

$user = User::where('email', '=', Input::get('email'));

Was kann ich hier tun, um zu sehen, ob $user einen Datensatz hat?

3voto

Karthik Punkte 5121

In deinem Controller

$this->validate($request, [
        'email' => 'required|unique:user|email',
    ]); 

In deiner Ansicht - Anzeige der bereits vorhandenen Nachricht

@if (count($errors) > 0)

            @foreach ($errors->all() as $error)
                {{ $error }}
            @endforeach

@endif

2voto

Julian Punkte 139
if ($u = User::where('email', '=', $value)->first())
{
   // do something with $u
   return 'exists';
} else {
  return 'nope';
}

would work with try/catch

->get() would still return an empty array

2voto

Mathesh Raj Punkte 651
$benutzer = User::where('email', request('email'))->first();
return (count($benutzer) > 0 ? 'E-Mail existiert' : 'E-Mail existiert nicht');

2voto

Arthur Tarasov Punkte 3141

Überprüfen auf null innerhalb der if-Anweisung verhindert, dass Laravel unmittelbar nach Abschluss der Abfrage 404 zurückgibt.

if ( User::find( $userId ) === null ) {

    return "Benutzer existiert nicht";
}
else {
    $user = User::find( $userId );

    return $user;
}

Es scheint, als würde es doppelte Abfragen geben, wenn der Benutzer gefunden wird, aber ich kann keine andere zuverlässige Lösung finden.

2voto

Nijat Aliyev Punkte 558

Einfach, komfortabel und verständlich mit Validator

class CustomerController extends Controller
{
    public function register(Request $request)
    {

        $validator = Validator::make($request->all(), [
            'name' => 'required|string|max:255',
            'email' => 'required|string|email|max:255|unique:customers',
            'phone' => 'required|string|max:255|unique:customers',
            'password' => 'required|string|min:6|confirmed',
        ]);

        if ($validator->fails()) {
            return response(['errors' => $validator->errors()->all()], 422);
        }

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X