[Memo#0.0.2] URL에 대한 쿼리 매개 변수 가져오기

12574 단어 LaravelPHPmemodevtech

개시하다

  • 이것은 내가 첫 번째 학자로서 배운 내용을 출력한 문장이다.
    만약 지루한 부분과 간단한 문법이 있다면 바로잡아 주십시오...📝
  • 하고 싶은 일

  • 페이지의 이동 목적지Bootstrap tabs에 기본값을 지정하려고 합니다.
  • 하지만 실제로는 잘 안 돼서 상사에게 폐를 끼치게 됐어요...따라서 "URL에 대한 쿼리 매개 변수만 가져오고 조건을 추가하면 됩니다."
  • URL에 대한 질의 매개 변수 가져오기

  • 처음에는 "URL의 쿼리 매개 변수 가져오기"를 알릴 때 이해할 수 없습니다.
  • 단어
    획득 방법
    이렇게 하면 어떤 결과가 나올지.
    전모를 잡지 못하다
    위의 것들은 원인 때문에 이해를 못했어...요컨대 공부가 부족하다.😶‍🌫️

    우선 단어마다 이해해야 한다


    조회
    DB에 문의, 아무래도 상상할 수 있을 것 같아.DB에서 데이터를 가져올 때 필요한 데이터를 가져오도록 명령할 수 있습니다.
    데이터베이스에 대한 검색 조건을 명령하거나 입력하십시오.
    SQL은'언어'쿼리는'문장'이라고 생각하는 사람도 있을 것 같다.
    매개 변수
    변량
    이번에 말한 매개 변수는 링크에 사용되는 변수다.
    질의 매개변수
    http://XXX/「?」+「zenn」+「=」+「memo」와 같다.
    이는 웹 서버에 정보를 전달하기 위해 URL에 추가된 정보입니다.「?」"여기서부터 시작하는 검색 매개 변수"를 표시하고 "memo"를 "zen"이라는 매개 변수 (변수) 의 값으로 지정합니다.

    획득 방법


    Request 클래스를 사용하여 input 방법으로 사용자 입력 가져오기
    Illuminate \Http \Request 인스턴스의 간단한 방법을 사용하여 모든 사용자 입력에 액세스할 수 있습니다.요구하는 HTTP 동사를 신경 쓸 필요가 없다.HTTP 동사가 어떻게 되든지 간에 input 방법으로 사용자의 입력을 얻을 수 있습니다.
    아주 알기 쉬워요...
    ExampleController.php
    public function show(Request $request)
        {
            $name = $request->input('name');
        }
    
    이번에show メソッドview에 건네주세요.Illuminate\Http\Request 사용 클래스, input로 하나만 저장.

    이렇게 하면 어떤 결과가 나올지.


    이번에는 URL의 검색 매개 변수를 가져와서view의 표시를 지정합니다
    실제 코드는 다음과 같다.
    UserController.php
    public function show(User $user, Request $request)
        {
            $user->load('portfolios.technologies', 'portfolios.user');
            $introduction = ReplaceClickableUrl($user->user_self_introduction);
            $currentUser = Auth::user();
            $isPublished = is_null($request->input('is_published')) ? true : (bool)$request->input('is_published');
            $portfolios = Portfolio::where('is_published', $isPublished)->orderBy('created_at', 'desc')->where('user_id', $user->id)->get();
            $portfolios->load('portfolioLikes');
    
            if (Auth::guard('company')->check()) {
                return view('user.profiles.show', compact('user', 'portfolios', 'introduction', 'currentUser'));
            }
    
            return view('user.profiles.show', compact('user', 'portfolios', 'introduction', 'currentUser','isPublished'));
        }
    
    $isPublished의 줄이 이번 요점이다.
    삼원 연산자에서는 사용자가 페이지로 마이그레이션할 때 URL이 처음에 사용자 ID로 페이지를 지정할 수 없기 때문에Bootstrap tabs 기본 디스플레이를 사용할 수 없습니다.show.blade.phpnav タブ에서 ?is_published=0?is_published=1href로 지정되어 세 가지 연산자로 지정되었다.
    UserController.php
    $isPublished = is_null($request->input('is_published')) ? true : (bool)$request->input('is_published');
    
    사용자가 페이지를 이동할 때is_null 빈 판정을 하고 Nulltrue가 아니면 is_published カラムのデータを取ってきて格納 (false の処理)の値 실행한다.
    이번에는published'열boolean형(bool)이기 때문에 캐릭터를 분배합니다.
    이렇게 하면 페이지를 이동할 때 조건부로 기본 디스플레이를 지정할 수 있습니다.

    총결산

  • 이번에는 URL의 조회 매개 변수의 취득 방법과 진행된 내용을 총결하였다.
    내가 이해하는 것이 가장 두렵기 때문에 나는 다양한 정보를 검색해 보면서 지식을 찾으면서 대답해 보고 싶다.
    끝까지 읽어주셔서 감사합니다.🙇🏻‍♂️
  • 좋은 웹페이지 즐겨찾기