Я работал над приложением laravel. Собираюсь go прямо к проблеме ... У меня есть кнопка лайка, которая запускает функцию likeit () в JS. В этой функции есть вызов AJAX, который должен был послать post_id, который нравится функции postLikePost, где он выполнит запрос. Теперь для проверки цели, так как мой маршрут не работал ... Я связал URL с пользовательским файлом, таким как url: 'addlike. php'
, добавил соединение с БД и запрос MySQL, и он отлично работает. Но я хочу go с потоком и хочу сделать это через контроллер и все такое.
Вот мой AJAX Звонок:
function like_function(post_id){
var urlLike = "{{ route('like') }}";
event.preventDefault();
$.ajax({
method: 'POST',
url: urlLike,
data: {post_id: post_id},
success: function(response)
{
alert(response);
}
});
Мой контроллер Куда я хочу добавить функция postLikePost
пространство имен App \ Http \ Controllers;
use Illuminate\Http\Request;
use App\Post;
use App\User;
class HomeController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('auth');
}
/**
* Show the application dashboard.
*
* @return \Illuminate\Contracts\Support\Renderable
*/
public function index()
{
$data = Post::orderBy('post_id','desc')->get();
return view('home',['data'=>$data]);
}
public function postLikePost(){
return "wow";
}
}
}
мой веб. php
<?php
use Illuminate\Support\Facades\Route;
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
Route::get('/login','MainController@index');
Auth::routes();
Route::get('/home', 'HomeController@index')->name('home');
Route::post('/like',[
'uses' => 'HomeController@postLikePost',
'as' => 'like',
]);