저는 Laravel 8에서 블로그 애플리케이션을 개발 중입니다.
ArticlesController 컨트롤러 단일 기사와 해당 comments를 표시하는 방법이 있습니다.
으아아아뷰에는 다음과 같은 댓글 목록이 있습니다.
으아아아기사 관련 경로:
으아아아댓글 페이지 매김을 "무한 스크롤"로 바꾸고 싶습니다.
이 목적을 위해 나는 다음을 가지고 있습니다:
으아아아페이지 2의 댓글은 https://larablog.com/show/deserunt-qui-exeritationem?page=2
방문 시 올바르게 표시되며 Chrome 콘솔에는 다음이 표시됩니다. 500(내부 서버 오류) 오류:
오류는 ArticlesController의 70행에 있는 오류 메시지에서 역으로 추적할 수 있습니다. - $article = Article::firstWhere('slug', $slug)
:
비객체의 "id" 속성을 가져오려고 합니다.
이것은 $article = Article::firstWhere('slug', $slug)
Ajax 없이도 잘 작동하기 때문에 이상합니다.
P粉2535186202024-02-18 10:55:43
firstWhere
返回符合传递条件的第一条记录,默认为 null
. 그럼, 당신
는 slug
与 $slug
匹配的第一篇文章,如果不存在这样的记录,则返回 null
。现在,每当您引用 $article->id
时,您都会认为 $article
是一个正确的 Article
并且您想知道其 id
의 값을 반환합니다. 일치하는 기사가 없으면 발생한 오류가 발생합니다.
그러므로 추가하고$article
初始化后检查 empty($article)
실제로 비어 있을 때 극단적인 경우를 처리하는 것이 현명합니다.
P粉1214472922024-02-18 10:00:05
내 솔루션은 다음과 같습니다.
routesweb.php
에 이 새로운 경로를 추가했습니다:
기사 내 컨트롤러:
으아아아댓글이 10개 이상인 경우에만 Ajax 스크립트를 로드합니다.
으아아아