>  Q&A  >  본문

전략을 사용하여 블레이드 템플릿에서 @can을 올바르게 사용하는 방법

문서에 나와 있는 대로 블레이드 템플릿에서 생성할 수 없습니다. @can()

내 정책은 다음과 같습니다.

으아악

스파티 권한을 사용하고 있습니다. 어쨌든 이 전략은 컨트롤러의 경로를 다음과 같이 보호하면 작동합니다.

으아악

이제 문제는 칼날에 있습니다. 편집할 버튼을 조건부로 렌더링하고 싶습니다 $canal, 이렇게 하려고 합니다:

으아악

문서에 정확히 나와 있습니다. 하지만 호출에 다른 매개변수가 필요하다는 오류가 발생합니다.

으아악

그래서 사용자를 @can()로 보내야 할 것 같아서 다음과 같이 변경했습니다.

으아악

이 역시 작동하지 않습니다. 전략을 전혀 "호출"하지 않습니다. 내가 어떻게 알아? 거기에 Log::info()를 좀 넣었어요.

어떤 아이디어가 있나요?

P粉821231319P粉821231319171일 전323

모든 응답(1)나는 대답할 것이다

  • P粉451614834

    P粉4516148342024-04-05 10:10:24

    이 문제를 해결하려면 @can 的第二个参数上发送 $code 而不是 AppModelsCanal::class에 메시지를 추가하세요. 예:

    으아악

    회신하다
    0
  • 취소회신하다