2017-03-14 3 views
1

関数search()から関数view_application()にperson_id値を渡して、このperson_idを使用してビュー・データを詳細ページに戻したいとします。ここに私のコントローラのコードはLaravel 5.4ある関数から別の関数にid値を渡す方法は?

<?php 

namespace App\Http\Controllers; 

use Faker\Provider\ar_JO\Person; 
use Illuminate\Http\Request; 
use Illuminate\Support\Facades\DB; 
use App\Application; 
use App\Personal; 

class CandidatesApplyController extends Controller 
{ 

    public function index(){ 
     return view('admin.candidates-apply') 
      ->with('application', Application::all()); 
    } 

    public function search(Request $request) 
    { 
     if ($request->ajax()) 
     { 
      $output=""; 
      $application = DB::table('application')->where('person_id', 'LIKE', '%' .$request->search.'%') 
       ->orWhere('name_khmer', 'LIKE', '%' .$request->search.'%') 
       ->orWhere('name_latin', 'LIKE', '%' .$request->search.'%') 
       ->get(); 

      if ($application) { 
       foreach ($application as $key => $applications) { 
        $output .= '<tr>'. 
         '<td>'.$applications->person_id.'</td>'. 
         '<td>'.$applications->name_khmer.'</td>'. 
         '<td>'.$applications->name_latin.'</td>'. 
         '<td>'.$applications->app_sex.'</td>'. 
         '<td>'.$applications->app_dob.'</td>'. 
         '<td>'.$applications->app_nat.'</td>'. 
         '<td>'.$applications->app_pob.'</td>'. 
         '<td>'.$applications->app_current.'</td>'. 
         '<td>'.$applications->e_mail.'</td>' . 
         '<td>'.$applications->telephone.'</td>'. 
         '<td>'.$applications->app_no.'</td>'. 
         '<td>'.$applications->app_title.'</td>'. 
         '<td>'.$applications->created_at.'</td>'. 
         '<td>'." 
         <div class='btn btn-md btn-info' style='margin-left: 15px; padding: 10px 15px 0px 15px;'> 
         <a href='#' style='color: #fff;'><p>ពិនិត្យ</p></a> 
         </div>".'</td>'. 

         '<td>'." 
         <div class='btn btn-md btn-info' style='margin-left: 15px; padding: 10px 15px 0px 15px;'> 
         <a href='./candidate-application' target='_blank' style='color: #fff;'><p>ពិនិត្យ</p></a> 
         </div>".'</td>'. 
         '</tr>'; 
       } 
       return response()->json($output); 

      } 

     } 

     return view('admin.candidates-apply', compact('application')); 

    } 


    public function view_application($id){ 
     $app = DB::table('application')->wherePersonId($id)->get(); 
     return view('admin.candidate-application', compact('app')); 

    } 

} 

とここに私のルートでこれを行うにはどのように

Route::get('/candidates-apply', '[email protected]')->middleware('auth'); 

/* Candidate Application Detail View Route*/ 
Route::get('/candidate-application', '[email protected]_application', function(){ 
    return view('admin.candidate-application'); 
})->middleware('auth'); 

です。ありがとうとよろしく、

+0

'return response() - > json($ output);'なぜこの返品が必要ですか? –

答えて

0

あなたがしようとしていることを正しく理解していれば。

1ソリューション:あなたの候補者IDが4である場合

Route::get('/candidate-application/{id}', '[email protected]_application', 
})->middleware('auth'); 

とあなたのアクションリンクがexmaple /candidate-application/4のためであるべきであり、それが自動的に渡されます。

はこれにあなたのルートを変更しますあなたの関数にあるidパラメータに渡します。あなたがidを持つフォームを送信し、それをあなたが検索で行うのと同じ方法で取得することができます

はソリューション

<a href='/candidate-application/'.$applications->person_id></a> 

2検索機能であなたのリンクにこれを追加します。

+0

本当に親切に感謝しています。それは今働いている。 – user3418777

関連する問題