Hallo Leute, ich habe eine Tabelle Hersteller (Spalt ‚MANUFACTURER_ID‘, ‚Hersteller‘) und will eine „Auswahl“ Liste anzuzeigen basierend durch diese Tabelle dynamisch in einer anderen, aber verknüpften Ansicht 'asset.blade.php'.Laravel, Anzeigedaten auf einem Drop-Down aus einer anderen Tabelle
Modell - Asset.php
namespace App;
class Asset extends Model
{
protected $primaryKey = 'asset_id';
}
-Controller - AssetController
namespace App\Http\Controllers;
use App\Asset;
use App\Manufacturer;
use Illuminate\Http\Request;
class AssetController extends Controller
{
public function asset(){
$assets = Asset::all();
return view('viewAsset', ['assets' => $assets]);
}
public function getmanufacturerlist() {
$Manufacturer = Manafacturers::all();
return view('manufacturer')->with('data', $Manufacturer);
}
public function add(Request $request){
$this->validate($request, [
'asset_id' => '',
'asset_category_id' => 'required',
'manufacturer_id' => 'required',
'department_id' => 'required',
]);
$assets = new Asset;
$assets ->asset_id = $request->input('asset_id');
$assets ->asset_category_id = $request->input('asset_category_id');
$assets ->manufacturer_id = $request->input('manufacturer_id');
$assets ->department_id = $request->input('department_id');
$assets ->save();
return redirect('/viewAsset') ->with('info', 'New Asset Saved Successfully!');
}
}
manufacturer.blade.php
<select name="manufacturer_id">
<option>Select a Manufacturer</option>
@foreach($manufacturer as $manufacturers)
<option value=" <?php echo $manufacturers->manufacturer_id; ?>" > <?php echo $manufacturer->manufacturer?> </option>
@endforeach
</select>
wenn ich mein Projekt ausführen - es funktioniert gut, sehe ich die Dropdown-Liste. Aber wenn ich meine manufacturer.blade.php
in Form sind:
@include('forms.manufacturer')
Ich erhalte die Fehler
Undefined variable: manufacturer.
Wie kann ich den Fehler beheben? Meine Laravel Version ist 5.4.
Von docs [Einschließlich Sub-Ansichten] (https://laravel.com/docs/5.5/blade#including-sub-views) ** Alle Variablen, die für die Elternansicht verfügbar sind, werden für die enthaltene Ansicht verfügbar gemacht **. Sie müssen '$ manufacturer' vom Controller übergeben, wenn Sie die Unteransicht' @include ('forms.manufacturer') ' – ljubadr
danke laden. Es funktioniert @ljubadr – Nii
Sie sind willkommen – ljubadr