【发布时间】:2020-08-20 11:31:44
【问题描述】:
我正在使用用户插件 OctoberCMS,我想通过 AJAX 将数据发送到控制器并将数据保存在数据库中(在登录用户的列中)。
所以我在我的 routes.php
中创建了一个新路由<?php
Route::get('saveHighscore', 'test\Profile\Controllers\HighScore@saveHighscore')
->middleware('web');
还有一个控制器
<?php
namespace Test\Profile\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use October\Rain\Auth\Models\User;
use RainLab\User\Facades\Auth;
class HighScore extends \Illuminate\Routing\Controller
{
function saveHighscore(Request $request) {
DB::table('users')->where(['id' => Auth::getUser()->id])->update(['highscore' => $request]);
}
}
还有我的 jQuery 调用
$.ajax({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
url: "/saveHighscore",
type: "POST",
data: highscore
});
但是没有任何效果。如果我在浏览器中使用控制器中的虚拟数据调用 /saveHighscore,它可以正常工作
【问题讨论】:
-
看看构建在 ajax 框架octobercms.com/docs/ajax/introduction
标签: php jquery ajax octobercms