>

Form Requests (App\Http\Requests) 에서 변수를 반환하는 방법  컨트롤러 (App\Http\Controllers) ?

양식 요청에서 persist () 함수에 대한 레코드를 저장하고 있습니다.

제 목표는 생성 된 ID를 전달하여 사용자의 편집 모드에서 페이지를 리디렉션하는 것입니다. 어떤 이유로 컨트롤러가 양식 요청에서 ID를 수신 할 수 없습니다.

앱 \ Http \ Requests \ MyFormRequests.php :

function persist()
{
  $business = Business::create([
    'cart_name' => $this['cart_name'],
    'product' => $this['product']
  ]);
  return $myid = $business->id;
}

App \ Http \ Controllers \ MyControllers.php :

public function store(MyFormRequests $request)
{
   $request->persist();
   return redirect()->route('mypage.edit.get', $request->persist()->$myid);
}

  • 답변 # 1

    중요

    이 방법이 권장되지 않는 것을 추가해야합니다. 귀하의 FormRequest는 요청의 유효성을 검사하는 책임을지며 컨트롤러는 저장 부분을 수행합니다. 그러나 이것은 작동합니다 :

    앱 \ Http \ Requests \ MyFormRequests.php :

    function persist()
    {
        return Business::create([
            'business_name' => $this['business_name'],
            'nationality' => $this['nationality']
        ])->id;
    }
    
    

    App \ Http \ Controllers \ MyControllers.php :

    public function store(MyFormRequests $request)
    {
        $id = $request->persist();
        return redirect()->route('register.edit.get', $id);
    }
    
    

  • 답변 # 2

    남자 이름 Snapey가 나를 도와주었습니다 :

    function persist()
    {
      ....
      return $business;
    }
    public function store(MyFormRequests $request)
    {
      $business = $request->persist();
      return redirect()->route('register.edit.get', $business->id);
    }
    
    

    이것이 미래에 누군가를 도울 수 있기를 바랍니다.

관련 자료

  • 이전 android - 프로그래밍 방식으로 생성 된 RadioGroup의 이상한 동작
  • 다음 javascript - 유성 자동 양식에서 한 필드를 다른 필드의 값에 종속시키는 방법은 무엇입니까?