블레이드 템플릿 내에서 리소스 링크를 참조하는 "Laravel"방식을 이해하려고합니다.Laravel의 블레이드 템플릿 내에서 편안한 리소스에 연결하는 방법은 무엇입니까?
컨텍스트는 내가 만들고있는 CRUD 관리자 패널입니다. URL은 다음과 같습니다.
"list" camera resources:
/admin/cameras
"show" a camera resource:
/admin/cameras/12
이러한 항목은 정상적으로 작동합니다.
내 routes.php 다음 "목록"행동에 대한 템플릿에서
Route::resource('admin/cameras', 'MyAdmin\\Controllers\\CamerasController');
는, 그 자원에 대한 "쇼"조치에 가서 각 행에 링크를 추가하기 위해 노력하고있어. 뷰/카메라/index.blade.php의 현재 작업 코드 :
<span>{{ link_to('/admin/cameras/'.$r['id'], $v); }}</span>
... 여기서 $ r은 둘러싼 루프의 '반복자'입니다. 당연히 이것은 위의 "쇼"와 같은 URL을 생성합니다.
link_to_route 또는 link_to_action을 사용하는 것이 더 깔끔한 방법 인 것처럼 보이지만, 나는별로 운이 없었습니다. 지금까지 읽은 것을 바탕으로 자원에 명명 된 라우트를 설정할 수있는 것 같지 않습니다. 코드가 최적 이상입니까? 아니면 Laravel이 여기에 제안 할만한 좀 더 우아한 점이 있습니까?
참고 : 비슷한 질문을했지만 내 '리소스'경로에만 해당됩니다. 자동으로 경로를 할당 laravel.com/docs/controllers#resource-controllers의 자원 FUL 경로를 보면
는 Laravel가 경로 이름을 지정할 것 당신의 자원. 그래서 당신의 쇼 루트는'link_to_route ('admin/cameras.show', $ v, array ('id'=> $ r [ 'id']))' – JofryHS
과 같은 것이 될 것입니다. @JofryHS : 이미 배정 된 답변으로 게시하면 공식 답변으로 확인하겠습니다. 감사! – PeterG
내가 언급하는 것을 잊어 버린 또 다른 점은,'/ admin /'으로 시작하는 경로가 거의 없다면 경로를 접두사로 넣는 것이 좋습니다. http://laravel.com/docs/routing#route-prefixing 코딩 즐기기. :) – JofryHS