【发布时间】:2018-04-07 06:37:41
【问题描述】:
大家好,我有一张表manufacturers(列'manufacturer_id'、'manufacturer' ) 并希望在不同但链接的视图 'asset.blade.php' 中动态显示基于此表的“选择”列表。
模型 - Asset.php
namespace App;
class Asset extends Model
{
protected $primaryKey = 'asset_id';
}
控制器 - 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>
当我执行我的项目时——它工作得很好,我看到了下拉列表。但如果我在表格中包含我的manufacturer.blade.php:
@include('forms.manufacturer')
我得到了错误
Undefined variable: manufacturer.
如何修复错误?我的 Laravel 版本是 5.4。
【问题讨论】:
-
来自文档Including Sub-Views 所有可用于父视图的变量都将可用于包含的视图。如果您正在加载子视图
@include('forms.manufacturer'),则需要从控制器传递$manufacturer -
谢谢。它有效@ljubadr
-
不客气
标签: php laravel laravel-blade