У меня проблема с отправкой формы ajax
в моем проекте Laravel 5
.В консоли браузера я получаю следующую ошибку:
Failed to load resource: the server responded with a status of 500 (Internal Server Error)
Я безуспешно пробовал множество предложений, найденных в других публикациях и на сайтах.Вот мой Ajax:
$.ajax({'url': './subscribe'
,'data' : {
"_token": $('meta[name="csrf-token"]').attr('content')
,"email" : $('#subscribe-email-input').val()
}
,'method': 'POST'
,'success': function(data){
console.log( data );
}
,'error': function(data){
console.log( 'oops', data );
}
});
В моем файле routes/web.php
определен следующий маршрут:
Route::post('subscribe', ['uses' => 'SubscribeController@validate', 'as' => 'subscribe.route']);
И контроллер довольно прост:
class SubscribeController extends Controller
{
/*
* Get email address from DB if exists
*
* @param string email, email address to search and return data from DB
*
* @returns $email
*/
public function validate ( Request $request )
{
$email = addslashes($request->email) ;
if ( $email )
{
$email = \App\Subscribe::where('email', '=', $email)->get();
if ( $email->isEmpty() )
{
self::executeInsertQuery ( $email );
return json_encode( array('body' => 'You have subscribed!') );
} else {
return json_encode( array('body' => 'You are already subscribed!') );
}
}
}
}
Я бы разместил код в self::executeInsertQuery(...)
, но я не думаю, что он уместен, учитывая, что маршрут subscribe
даже не подходит к методу validate
.
Любые предложения или советыо том, как решить проблему, будет принята с благодарностью!Заранее спасибо!