子页面在Laravel中?

时间:2018-07-26 00:37:11

标签: php laravel voyager

我尝试应用一些我在网上找到的解决方案,但似乎无法为我工作。 (我对Laravel还是很陌生)我正在尝试让Laravel定向到我设置的刀片视图。但是,我希望能够通过子页面URL访问它们。我可以帮忙吗?我目前使用的网址是

/course/{course_slug}
/lesson/{lesson_slug}
/module/{module_slug}

我已经设置了course.blade.php,lesson.blade.php和module.blade.php。 (不知道为什么它不能让我发布我的代码)

但是我希望能够使用以下语法路由到这些视图:

/course/{course-slug}
/course/{course-slug}/{lesson-slug}
/course/{course-slug}{lesson-slug}/{module-slug}

任何建议都会很棒。非常感谢。

欧文

编辑:用于刀片文件的代码(将模块变量更改为课程,课程等)

@foreach($modules as $modules)
        <li>
            <a href="/modules/{{ $lesson->lesson_slug}}/{{ $modules->module_slug }}">

                <span>{{ $modules->module_title }}</span>
            </a>
        </li>

这是我的路线文件代码:

Route::get('course/{slug}', function($slug){
    $course= App\Course::where('slug', '=', $slug)->firstOrFail();
    $lessons = App\Lesson::where("course_id", "=", $course->id)->get();
    return view('course', compact('course'))->with('lessons', $lessons);
});

Route::get('lesson/{slug}', function($slug){
    $lesson = App\Lesson::where('lesson_slug', '=', $slug)->firstOrFail();
    $modules = App\Module::where("lesson_id", "=", $lesson->id)->get();
    return view('lesson', compact('lesson'))->with('modules', $modules);
});

Route::get('module/{slug}', function($slug){
    $module = App\Module::where('module_slug', '=', $slug)->firstOrFail();
    return view('module', compact('module'));
});

0 个答案:

没有答案