简体   繁体   English

laravel,在另一个表的下拉菜单中显示数据

[英]laravel, display data on a drop down from another table

Hello guys I have a table manufacturers (columns 'manufacturer_id' , 'manufacturer' ) and want display a "select" list based by this table dynamically in a different but linked view 'asset.blade.php' . 大家好,我有一个表制造商 (列'manufacturer_id''manufacturer' ),想要在不同但链接的视图'asset.blade.php'中动态显示基于此表的“选择”列表。

Model - Asset.php 模型-Asset.php

namespace App;

class Asset extends Model
{
    protected $primaryKey = 'asset_id';

}

Controller - AssetController 控制器-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 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>

when i execute my project - it works just fine, i see the dropdown list. 当我执行我的项目时-它正常工作,我看到了下拉列表。 But if I include my manufacturer.blade.php in the form: 但是,如果我有我的manufacturer.blade.php形式:

 @include('forms.manufacturer')

I get the error 我得到错误

Undefined variable: manufacturer.

How do i fix the error? 我该如何解决错误? My Laravel version is 5.4. 我的Laravel版本是5.4。

You're passing $manufacturer as $data to your view. 您正在将$manufacturer作为$data传递给视图。

Update it to properly pass a variable named $manufacturer . 更新它以正确传递一个名为$manufacturer的变量。

return view('manufacturer')->with('manufacturer', $Manufacturer);

Or use compact for a cleaner approach: 或使用紧凑的清洁方法:

return view('manufacturer', compact('manufacturer'));

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Laravel - 如何将下拉表中的数据链接到另一个资源模型 - Laravel - How to link data from drop down table into another resource model 编辑时显示下拉列表中的其他表数据 - Display other table data from drop down list when edit 如何在 CAKEPHP 3 中其他表的下拉列表中显示数据? - HOW TO DISPLAY DATA IN DROP DOWN LIST FROM OTHER TABLE IN CAKEPHP 3? 将下拉数据从一个表插入到另一个表 - Inserting drop down data from one table to another 将表格中的数据显示到下拉菜单中 - displaying data from a table into a drop down menu 使用模型从另一个表中在Laravel查询中显示数据 - Display Data in Laravel Query from another table using model 尝试将下拉列表中的数据作为外键插入另一个表中。 数据未插入 - Trying to insert data from a drop-down list as a foreign key in another table. Data not inserted 使用外键将数据从一个表插入到另一个表 - inserting data from one table into another from drop-down using foreign keys Laravel将数据从一个表移动到另一个表并删除数据来自的列? - Laravel move data from one table to another and drop the column that the data came from? 在另一个页面中显示2个下拉菜单中的条目 - Display entries from 2 drop down menus in another page
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM