J'ai une page qui affiche des liens avec le nom des entreprises qui sont récupérées dans la base de données comme ceci:données d'affichage de Laravel sur une page basée sur ID
Controller:
public function viewBusiness() {
// Return our "website" object
$business = Business::all();
// Pass the contents of the "html" property to the view
return view('viewBusiness', ['business' => $business]);
}
Vue:
@extends('master') @section('title', 'Live Oldham') @section('content')
@section('content')
@foreach ($business as $businesses)
<a target="_blank" href="{{ url('business/' . $businesses->name) }}"> {{($businesses->name) }}
</a> @endforeach
@endsection
Itinéraire:
Route::get('business/list', '[email protected]')->name('viewBusiness');
J'ai ensuite ajouté une fonction où l'utilisateur clique sur un lien et il est pris à une page qui affiche toutes les données pour cette entreprise spécifique, mais il traite toutes les données, mais pour toutes les entreprises.
Controller:
function displayBusiness() {
$business = Business::all();
$address = Address::all();
return view('displayBusiness', ['business' => $business, 'address' => $address]);
}
Vue:
@foreach ($business as $businesses)
<p>{{$businesses->name}}</p>
<p>{{$businesses->email}}</p>
@endforeach
@foreach ($address as $addresses)
<p>{{$addresses->firstline_address}}</p>
<p>{{$addresses->secondline_address}}</p>
<p>{{$addresses->town}}</p>
<p>{{$addresses->city}}</p>
<p>{{$addresses->postcode}}</p>
<p>{{$addresses->telephone}}</p>
@endforeach
Route:
Route::get('business/{name}', '[email protected]')->name('displayBusiness');
Maintenant, voici la question, comment ce code peut être modifié de sorte qu'une entreprise qui correspond soit bussiness -> nom ou business-> id est affiché. (Je suppose que le nom est pris lorsque l'utilisateur clique sur un nom
Une autre question est de savoir comment restreindre l'URL de sorte que si localhost/business/{nom} n'est pas égal à un business-> nom dans la base de données renvoie une erreur? au moment où il montre la page, peu importe ce que vous entrez.
Merci!
A propos de votre deuxième question, vous n'utilisez aucun paramètre dans la fonction displayBusiness il retourne toutes les données que vous avez envoyés –