2016-04-26 2 views
1

Ich benutze eine findige Route. Bei der Methode show() möchte ich den Datensatz nicht über den id (Primärschlüssel) finden, sondern stattdessen die Artikel title.PHP Laravel zeigen Methode von einem anderen Attibute

public function show($id){ 

    $article = Article::find($id); 

    if(empty($article)) 
     abort(404); 

    return view('articles.show', compact('article')); 
} 

Wie kann ich dies erreichen?

+0

Uhr try $ articlel = Artikel :: wo ('title', '=', 1) zu bedienen -> firstOrFail(); aber nicht funktionieren –

+0

Der Code, den Sie in Ihrem Kommentar gepostet haben, würde versuchen, einen Datensatz mit dem Titel '1' zu finden. – Jeemusu

+0

ja, ich glaube ich ändere zu $ ​​articel = Artikel :: wo ('title', '=', $ name) -> firstOrFail(); –

Antwort

2
 
public function show($title){ 

     $article = Article::where('title',$title)->first(); 

     if(empty($article)) 

     abort(404); 

     return view('articles.show', compact('article')); 
    } 

dieser Code Rückgabewert gleich wie

+0

ja netter code das ist fix konzept –

+0

danke bitte markieren – abhayendra

Verwandte Themen