php - Laravel - 未定义的变量:模块
问题描述
我正在尝试创建一个新模块 - 返回以下错误:
未定义变量:模块(查看:/Users/kerrymckinney/Desktop/LearningHub/resources/views/admin/module/index.blade.php)
index.blade.php;
@extends('layouts.app')
@section('content')
<div class="container">
<div class="row justify-content-center">
<div class="col-md-8">
<p>
<a href="{{ route('admin.modules.create') }}"><button type="button" class="btn btn-success">Create Module</button></a>
</p>
<div class="card">
<div class="card-header">Modules</div>
<div class="card-body">
<div class="table-responsive">
<table class="table">
<thead>
<tr>
<th>ID</th>
<th>Module Title</th>
<th>Course Title</th>
<th></th>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
@foreach($modules as $module)
<tr>
<th scope="row">{{ $module->id }}</th>
<td>{{ $module->title }}</td>
<td>{{ $module->course->title ?? ''}}</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
</div>
@endsection
模块控制器;
<?php
namespace App\Http\Controllers\Admin;
use App\User;
use App\Role;
use App\Course;
use App\Module;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class ModulesController extends Controller
{
public function index(Request $request)
{
$modules = new module();
if ($request->input('course_id')) {
$modules = $modules->where('course_id', $request->input('course_id'));
} $modules = $modules->get(); //passing modules with course_id through
//$modules = $modules->all();
return view('admin.module.index', compact('modules'));
}
public function create()
{
$courses = Course::all()->pluck('title', 'id');
return view('admin.module.create', compact('courses'));
}
public function store(Request $request)
{
$module = Module::create($request->all());
return view('admin.module.index', ['course_id' => $request->id]); //redirects to correct route by adding course_id in parameter
}
}
我不确定我做错了什么,有人可以帮忙吗?我是 laravel 的新手。
谢谢。
解决方案
尝试这个
public function index(Request $request)
{
if ($request->input('course_id')) {
$modules = Module::where('course_id', $request->input('course_id'))->get();
}else{
$modules = Module::all();
}
return view('admin.module.index', compact('modules'));
}
推荐阅读
- swift - 如何通过 urlsession 更新 uitableview 单元格中的进度视图(下载/上传文件)
- laravel - Azure 中托管的 Laravel Web 应用程序中的 PUT 和 DELETE 405 Method Not Allowed 错误
- javascript - 相对于父容器定位元素
- c++ - 对模板类的模糊引用 (C++)
- javascript - 带有 Redux 表单的 Material UI 自动完成组件
- events - Flink 表源添加时间属性时数据类型不匹配
- azure - 触发的 Web 作业 Powershell 部署脚本
- mysql - 如何根据两个或多个重复的列更新 SQL 行
- android - Android 进度条 setprogress() 函数不起作用
- javascript - Uint8Array 是否在节点和浏览器中使用共享内存缓冲区?