Как просмотреть предметы определенного курса - PullRequest
0 голосов
/ 28 мая 2018

У меня есть список курсов, и в каждом курсе есть кнопка, которая позволяет мне просматривать все предметы этого конкретного курса.

Сначала я использовал эту команду, чтобы laravel уже знал, что является родительским элементом:

php artisan make:controller CourseSubjectController --model=Subject --parent=Course

В файле курса index.php у меня есть кнопка, которая должна позволить мне просмотреть все предметы по этому конкретному вопросу:

<td><a class="btn btn-success" href="{{route('departments.course.subjects.index', [$course->department->id, $course->id])}}">Subjects</a></td>

Видимо, URL-адрес правильный:

Контроллер выглядит следующим образом:

public function index(Course $course)
{
    return $course->subjects;
}

Когда я захожу по ссылке, я сталкиваюсь с этой ошибкой:

"Type error: Argument 1 passed to App\Http\Controllers\CourseSubjectController::index() must be an instance of App\Course, string given"

Как я могу просмотреть предметы курса?

Заранее спасибо

1 Ответ

0 голосов
/ 28 мая 2018

Выдает ошибку, потому что вы не передали экземпляр курса на свой маршрут.Я предполагаю, что вы используете запрос GET, и в своем маршруте вы передаете только идентификатор отдела курса и его идентификатор:

[$course->department->id, $course->id]

Так что, возможно, вы могли бы вместо этого сделать это в своем контроллере:

public function index($departmentId, $courseId)
{
    $course = Course::findOrFail($courseId);
    return $course->subjects;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...