2016-11-03 4 views
0

메일 템플리트에서 매개 변수로 sql 데이터를 전달하려고합니다. 'welcome.blade.php'는 내 메일 템플릿입니다. 'Remainder.php'로 메일 파일을 만들었습니다. 이제 '내부 서버 오류'를 발견했습니다. 환영합니다 .blade.php에 사용자 데이터를 전달하고 싶습니다.매개 변수를 laravel의 메일 tempate에 전달하십시오.

아약스의 메일 기능

$.ajax({ 
      type: "GET", 
      url: "testHello", 
      data: {'id':user_id}, 
      dataType: 'JSON', 
      success: function(data, textStatus, jqXHR){ 
       //alert(data); 
     } 
      }); 

경로

Route::get('testHello','[email protected]'); 

컨트롤러

public function test(Request $request) 
{ 
    $request_data = $request->all(); 
    $id = $request_data['id']; 
    $to_email = '[email protected]'; 
    Mail::to($to_email)->send(new Reminder); 
    return response()->json($id); 
} 

Remailder. 당신이 당신의 쿼리에 정의되지 않은 변수 ($ approver_id)를 가지고있는 것처럼

@foreach ($users as $user) 
    {{$user->traveler_name}} 
    @endforeach 
+0

'내부 서버 오류'가 발생하면 문제가 발생했음을 의미합니다. 서버의 로그를 확인 했습니까? – Dekel

답변

0

welcome.blade.php PHP

public function build() 
{ 
    DB::enableQueryLog(); 

$users = DB::table('travel_request') 
     ->join('department', 'travel_request.department_id', '=', 'department.id') 
     ->join('users', 'travel_request.approver_id', '=', 'users.id') 
     ->join('travel_purpose', 'travel_request.travel_purpose_id', '=', 'travel_purpose.id') 
     ->join('traveling_details', 'travel_request.id','=','traveling_details.travel_request_id') 
     ->join('country','country.id', '=', 'traveling_details.country_id') 
     ->join('travel_type','traveling_details.travel_type_id', '=', 'travel_type.id') 
     ->join('travel_request_status','travel_request.status_id', '=', 'travel_request_status.id') 
     ->select('travel_request.*', 'travel_request.id as travel_id','department.name as dept_name','users.firstname as approver_name','travel_purpose.purpose','country.name as country_name','traveling_details.from_date','traveling_details.to_date','travel_request_status.status','travel_type.type as travelType')->where('travel_request.approver_id',$approver_id)->groupby('travel_request.id')->get(); 
    return $this->from('[email protected]') 
       ->view('email.welcome',['users'=>$users]); 
} 

보인다. 코드가 정상적으로 보입니다. 쿼리에서 '내부 서버 오류'가 발생한다고 가정합니다.

로그를 확인하면 문제를 정확히 찾아 낼 수 있습니다.

관련 문제