>백엔드 개발 >PHP 튜토리얼 >laravel5.2에서 리소스 라우팅을 정의한 후 블레이드 템플릿에서 라우팅을 구문 분석하는 데 문제가 있습니다.

laravel5.2에서 리소스 라우팅을 정의한 후 블레이드 템플릿에서 라우팅을 구문 분석하는 데 문제가 있습니다.

WBOY
WBOY원래의
2016-08-10 09:07:151671검색

laravel5.2를 사용하는 과정에서 작은 문제가 발생하여 도움을 요청드리고 싶습니다.

리소스 경로를 정의하고 해당 리소스 경로의 이름을 데이터베이스에 저장했습니다. 이제 데이터베이스를 통해 검색하고 삭제하면 다음과 같은 결과가 나옵니다.

<code class="php">
    array (size=6)
      0 => 
        object(stdClass)[221]
          public 'id' => int 10
          public 'route' => string 'menu.create' (length=11)
      1 => 
        object(stdClass)[222]
          public 'id' => int 11
          public 'route' => string 'menu.index ' (length=11)    

  </code>

다음으로 템플릿에서 위 배열의 모든 경로 이름에 해당하는 모든 URL을 출력합니다.

<code class="php">
    @foreach($menulist as $menu)
        {{ route($menu->route) }}
    @endforeach
</code>

그러나 오류가 발생했습니다:

UrlGenerator.php 라인 314의 ErrorException:
경로 [menu.index ]가 정의되지 않았습니다.

단순히 {{ Route('menu.index') }}만 사용하면 오류가 발생하지 않습니다. 무엇이 문제인지 여쭤봐도 될까요?

답글 내용:

laravel5.2를 사용하는 과정에서 작은 문제가 발생하여 도움을 요청드리고 싶습니다.

리소스 경로를 정의하고 해당 리소스 경로의 이름을 데이터베이스에 저장했습니다. 이제 데이터베이스를 통해 검색하고 삭제하면 다음과 같은 결과가 나옵니다.

<code class="php">
    array (size=6)
      0 => 
        object(stdClass)[221]
          public 'id' => int 10
          public 'route' => string 'menu.create' (length=11)
      1 => 
        object(stdClass)[222]
          public 'id' => int 11
          public 'route' => string 'menu.index ' (length=11)    

  </code>

다음으로 템플릿에서 위 배열의 모든 경로 이름에 해당하는 모든 URL을 출력합니다.

<code class="php">
    @foreach($menulist as $menu)
        {{ route($menu->route) }}
    @endforeach
</code>

그런데 오류가 발생했습니다.

UrlGenerator.php 라인 314의 ErrorException:
[menu.index] 경로가 정의되지 않았습니다.

단순히 {{ Route('menu.index') }}만 사용하면 오류가 발생하지 않습니다. 무엇이 문제인지 여쭤봐도 될까요?

지금 데이터베이스에서 읽고 있는 것은 객체가 아닌 객체의 문자열일 뿐입니다. 실행하려면 먼저 객체로 변환해야 합니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.