2016-06-29 2 views
0

body, pros, cons를 저장하는 동안 "제출"버튼을 클릭 할 때 question.blade보기에 두 개의 변수 (게시 및 응답)를 전달하려고합니다. DB. (Question.blade.php \ \ WAMP \ www가 XXXXXXXXXX \ 리소스 \ \ 전망 : D보기) 9e68b64a739caa46ec7f5af26c6c40a6cf68ebf3.php 라인 에서 비 개체의 속성을 얻으려고 노력오류 laravel의 객체가 아닌 속성을 얻으려고합니다.

: 나는 다음과 같은 오류가 나타날 수 PhpEngine.php 라인 CompilerEngine-> handleViewException (오브젝트 (ErrorException), '1')이 44

컨트롤러 번호 :

public function postAnswer(Request $request, $post_id) 
     { 

      $post = Post::where('id', $post_id)->first(); 


      $body = $request['body']; 
      $pros = $request['pros']; 
      $cons = $request['cons']; 

      $answer = new Answer(); 
      $answer->body = $body; 
      $answer->pros = $pros; 
      $answer->cons = $cons; 


    $request->user()->answers()->save($answer); 
    $post->answers()->save($answer); 

     return view('Question', [ 
      'post' => $post , 
     'answer' => $answer]); 

question.blade 번호 :

,815,
+0

을 통과해야합니다. foreach를 제거하고 $ answer를 사용하여 속성을 가져옵니다. –

+0

감사합니다. 하지만 제 경우에는 한 가지 질문에 대한 답이 많아서 응답 표를 반복해야합니까? –

+0

그러면 $ post-> answers를 반복하고 싶습니다. –

답변

0

$answer을 하나의 개체로 보내지 만 배열에서 블레이드를 사용하면 @foreach가없는 블레이드에서 직접 사용하거나 실제로 배열을 보내고 보내려는 경우 대신에 '답'=> $ 대답을 통과 $request->user()->answers 또는 $post->answers

+0

이렇게하면 데이터가 DB에 올바르게 저장됩니다. 그러나 질문에는 아무 것도 나타나지 않습니다. 블레이드는이 질문과 관련된 대답이 있지만 .... 어떤 아이디어입니까? –

+1

'$ post-> answers()'와'$ request-> user() -> answers()'는 쿼리 빌더를 반환합니다. 답을 얻으려면'$ post-> answers' 또는'$ request-> user() -> answers'를 사용하십시오 –

+0

감사합니다 !! –

0

, 당신은 당신이 foreach 문에 $ 대답을 사용할 수 없습니다 'answer' => $request->user()->answers()->latest()->first()

관련 문제