我最近安装了这软件包,并配置了指南,但有些是如何不工作的!它不起作用,我的意思是它没有向数据库添加任何东西。我真的不知道我的吐露有什么问题,但我已经用向导检查了所有的东西3次,一切都是正确的,但是.我不知道
config/audit.php:
<?php
return [
'enabled' => env('AUDITING_ENABLED', true),
'implementation' => OwenIt\Auditing\Models\Audit::class,
'user' => [
'morph_prefix' => 'user',
'guards' => [
'web',
'api',
],
],
'resolver' => [
'user' => OwenIt\Auditing\Resolvers\UserResolver::class,
'ip_address' => OwenIt\Auditing\Resolvers\IpAddressResolver::class,
'user_agent' => OwenIt\Auditing\Resolvers\UserAgentResolver::class,
'url' => OwenIt\Auditing\Resolvers\UrlResolver::class,
],
'events' => [
'created',
'updated',
'deleted',
'restored',
'gold_mailed' => 'goldMailed',
'invited' => 'clientInvited',
],
'strict' => false,
'timestamps' => false,
'threshold' => 0,
'driver' => 'session',
'drivers' => [
'eloquent' => [
'table' => 'audits',
'connection' => null,
],
],
'console' => true,
];我想审计的模型:
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use OwenIt\Auditing\Contracts\Auditable;
use App\Models\Expansion;
use App\Models\Audit;
class Setting extends Model implements Auditable
{
protected $table = 'settings';
use \OwenIt\Auditing\Auditable;
protected $fillable = [
'expansion_id', 'season', 'advertiser_app', 'pvp_app', 'raid_app', 'version'
];
protected $auditInclude = [
'expansion_id', 'season', 'advertiser_app', 'pvp_app', 'raid_app', 'version'
];
public function Expansion()
{
return $this->hasOne(Expansion::class, 'id', 'expansion_id');
}
}web.php:
Route::post('/setting' , 'Admin\SuperAdminController@saveSetting')->middleware('superadmin')->name('admin_save_setting');主计长:
public function saveSetting(Request $request)
{
$sql = Setting::where('id', 1)->update([
'expansion_id' => $request['expansion_id'],
'season' => $request['season'],
'advertiser_app' => $request['advertiser_app'],
'pvp_app' => $request['pvp_app'],
'raid_app' => $request['raid_app'],
'version' => $request['version']
]);
if ($sql) {
toastr()->success('Settings successfully updated.');
return redirect()->back();
}
toastr()->error('Something went wrong!');
return redirect()->back();
}我不知道你需要什么信息,但我想这就足够了
我想我的问题是配置文件中的“驱动程序”,我不知道这是否正确
发布于 2021-10-13 04:13:59
更新
基于您展示的控制器代码,它不起作用,因为您的代码是使用Builder样式调用的,而且只有在使用Eloquent样式调用它时包才能工作。
文档链接

因此,也许您需要将代码更改为:
$setting = Setting::where('id', 1)->firstOrFail();
$setting->update([
'expansion_id' => $request['expansion_id'],
'season' => $request['season'],
'advertiser_app' => $request['advertiser_app'],
'pvp_app' => $request['pvp_app'],
'raid_app' => $request['raid_app'],
'version' => $request['version']
]);发布于 2021-10-13 12:36:34
现在我又遇到了另一个问题--
这是我的控制器:
$sql = Raid::findOrFail($request['id']);
$sql = $sql->update($request->all());我的表中有一个数组,更新后的值如下所示:
"{\"Plate\":0,\"Cloth\":0,\"Mail\":0,\"Leather\":0}"但应该是:
{"Plate":"0","Cloth":"0","Mail":"0","Leather":"0"}因此,在此之前,我会得到一个错误,我是这样更新的,它是好的:
$sql = Raid::where('id', $request['id'])->update($request->all());这就是我的模式(交易员和class_traders是我有问题的字段):
use SoftDeletes;
use \OwenIt\Auditing\Auditable;
protected $table = 'raid';
protected $dates = ['date_and_time','deleted_at'];
protected $fillable = [
'admin_id', '....
];
protected $casts = [
'bosses' => 'array',
'traders' => 'array',
'class_traders' => 'array',
'boosters' => 'array',
];https://stackoverflow.com/questions/69549560
复制相似问题