2017-09-07 2 views
0

모델, 컨트롤러 및 항목을 데이터베이스에 도입하기위한 양식이 있습니다. 문제는 페이지에서 데이터베이스에 중복 항목이 발생했기 때문입니다. 어떻게 해결할 수 있습니까?페이지를 다시로드 할 때 Laravel 중복 항목

loan.controller :

public function store(Request $request) 
    { $id = Auth::id(); 
      $loan=New loan; 
      $loan->cod_user=$id; 
      $loan->nume =$request->name; 
      $loan->data=$request->date; 
      $loan->durata=$request->period; 
      $loan->valoare_rata_luna=$request->month; 
      $loan->valoare_totala=$request->amount; 
      $loan->save(); 

      return view('loans'); 
     } 

대출의 형태로보기 :

<div class="container"> 
      <div class="row"> 
        <div class="col-md-4"> 
        <div class="blacktext"><h3>My Loans:</h3></div> 
        </div> 
        <div class="col-md-4"></div> 
        <div class="col-md-2"></div> 
        <div class="col-md-2"><button type="button" class="btn btn-success" data-toggle="modal" data-target="#modal1"> 
        <span class="glyphicon glyphicon-plus-sign"></span> Add Loan</button></div> 

       <div class="modal fade " id="modal1" role="dialog"> 
        <div class="modal-dialog modal-lg"> 
         <div class="modal-content"> 

          <div class="modal-header"> 
           <button class="close" data-dismiss="modal">×</button> 
             <h3>Add Loan</h3> 
          </div> 
          <div class="modal-body text-right"> 

           <form action="{{ route('loan.store') }}" method="POST">  
            <p class="al-left"> 
            {{csrf_field()}} 
            <label for="date">Date:</label> 
            <input type = "date" name="date" placeholder="Date" id="date"> 
            </p> 

            ... 

            <p class="al-left"> 
            <label for="amount">Amount:</label> 
            <input type = "number" name="amount" placeholder="0" id="amount"> 
            </p> 

            <input type="submit" class="btn btn-sm btn-primary" name="submit" value="Add"> 
+1

직접보기를 반환하지 않고 세부 정보를 저장 한 후 리디렉션을 시도하십시오. –

답변

0

시도해주세요. return redirect() - back()을 사용합니다. 확실히 작동 할 것입니다.

0

POST는 여전히 새로 고침에 존재 .. 당신이 할 수있는 일은 같은 .. 저장 기능에서 분리 된 페이지가있다 이 ..

ROUTE

,210

LoanController

public function viewLoanForm() 
{ 
    return view('loan'); 
} 

public function store(Request $request) 
{ 
    // process your input 
    return redirect('/loans'); 
} 
+0

이것은 나를 위해 일했습니다. 감사합니다. – Andrei

1

그냥 경로 (뷰를 제공하는 경로) 대신 상점 방법의 끝에서보기로 리디렉션 : 당신이해야한다고 생각

public function store(Request $request) 
    { $id = Auth::id(); 
      $loan=New loan; 
      $loan->cod_user=$id; 
      $loan->nume =$request->name; 
      $loan->data=$request->date; 
      $loan->durata=$request->period; 
      $loan->valoare_rata_luna=$request->month; 
      $loan->valoare_totala=$request->amount; 
      $loan->save(); 

      return redirect(route(('loans')); //asumming that you named a route as loans 
     } 
0

return 방법을 다음과 같이 변경하십시오.

public function store(Request $request) 
    { $id = Auth::id(); 
      $loan=New loan; 
      $loan->cod_user=$id; 
      $loan->nume =$request->name; 
      $loan->data=$request->date; 
      $loan->durata=$request->period; 
      $loan->valoare_rata_luna=$request->month; 
      $loan->valoare_totala=$request->amount; 
      $loan->save(); 

      return redirect()->route('loans'); 
     } 
관련 문제