用于收集市場(chǎng)中操作日志用戶所遇到的問(wèn)題
找到這個(gè)bug的情況了。。redis隊(duì)列時(shí)候會(huì)報(bào)這個(gè)錯(cuò),那個(gè)表也有相應(yīng)的模型的,我要怎么弄呢,版主
laravel ORM 使用 DB 操作 $ignoreLogFields(日志生成忽略的字段)及$doNotRecordLog(數(shù)據(jù)表不生成日志) 屬性不生效
應(yīng)該是沒(méi)有找到對(duì)應(yīng)模型,可以設(shè)置一下表模型對(duì)應(yīng)關(guān)系 \Chance\Log\facades\OperationLog::setTableModelMapping
佬 修復(fù)一下laravel orm Log文件 如果模型casts屬性字段定義成Object 寫數(shù)據(jù) 日志就會(huì)報(bào)錯(cuò) (Object of class Illuminate\Database\Eloquent\Casts\ArrayObject could not be converted to string) Log getValue方法兼容下object
安裝插件后,webman-admin后臺(tái)新增管理員賬戶,登陸后會(huì)報(bào)錯(cuò)
{
"code": 500,
"msg": "json_decode(): Passing null to parameter #1 ($json) of type string is deprecated",
"type": "failed",
"traces": "ErrorException: json_decode(): Passing null to parameter #1 ($json) of type string is deprecated in /Users/mac/poj
/webman/vendor/chance-fyi/operation-log/src/orm/illuminate/Log.php:114\nStack trace:
#0 [internal function]: support\\App::{closure}(8192, 'json_decode(): ...', '/Users/mac/poj
/...', 114)
#1 /Users/mac/poj
/webman/vendor/chance-fyi/operation-log/src/orm/illuminate/Log.php(114): json_decode(NULL, true)
#2 /Users/mac/poj
/webman/vendor/chance-fyi/operation-log/src/OperationLog.php(190): Chance\\Log\\orm\\illuminate\\Log->getOldValue(Object(plugin\\admin\\app\\model\\Admin), 'login_at')
#3 /Users/mac/poj
/webman/vendor/chance-fyi/operation-log/src/orm/illuminate/Log.php(147): Chance\\Log\\OperationLog->generateLog(Object(plugin\\admin\\app\\model\\Admin), 'updated')
#4 [internal function]: Chance\\Log\\orm\\illuminate\\Log->updated(Object(plugin\\admin\\app\\model\\Admin), Array, Array)
#5 /Users/mac/poj
/webman/vendor/chance-fyi/operation-log/src/Facade.php(19): call_user_func_array(Array, Array)
#6 /Users/mac/poj
/webman/vendor/chance-fyi/operation-log/src/orm/illuminate/Builder.php(53): Chance\\Log\\Facade::__callStatic('updated', Array)
#7 /Users/mac/poj
/webman/vendor/illuminate/database/Eloquent/Builder.php(921): Chance\\Log\\orm\\illuminate\\Builder->update(Array)
#8 /Users/mac/poj
/webman/vendor/illuminate/database/Eloquent/Model.php(1072): Illuminate\\Database\\Eloquent\\Builder->update(Array)
#9 /Users/mac/poj
/webman/vendor/illuminate/database/Eloquent/Model.php(987): Illuminate\\Database\\Eloquent\\Model->performUpdate(Object(Illuminate\\Database\\Eloquent\\Builder))
#10 /Users/mac/poj
/webman/plugin/admin/app/controller/AccountController.php(83): Illuminate\\Database\\Eloquent\\Model->save()
#11 /Users/mac/poj
/webman/vendor/workerman/webman-framework/src/App.php(319): plugin\\admin\\app\\controller\\AccountController->login(Object(support\\Request))
#12 /Users/mac/poj
/webman/vendor/workerman/webman-framework/src/App.php(349): Webman\\App::Webman\\{closure}(Object(support\\Request))
#13 /Users/mac/poj
/webman/plugin/oplog/app/middleware/AfterOperationLog.php(17): Webman\\App::Webman\\{closure}(Object(support\\Request))
#14 /Users/mac/poj
/webman/vendor/workerman/webman-framework/src/App.php(341): plugin\\oplog\\app\\middleware\\AfterOperationLog->process(Object(support\\Request), Object(Closure))
#15 /Users/mac/poj
/webman/plugin/admin/app/middleware/AccessControl.php(47): Webman\\App::Webman\\{closure}(Object(support\\Request))
#16 /Users/mac/poj
/webman/vendor/workerman/webman-framework/src/App.php(341): plugin\\admin\\app\\middleware\\AccessControl->process(Object(support\\Request), Object(Closure))
#17 /Users/mac/poj
/webman/vendor/workerman/webman-framework/src/App.php(141): Webman\\App::Webman\\{closure}(Object(support\\Request))
#18 /Users/mac/poj
/webman/vendor/workerman/workerman/Connection/TcpConnection.php(646): Webman\\App->onMessage(Object(Workerman\\Connection\\TcpConnection), Object(support\\Request))
#19 /Users/mac/poj
/webman/vendor/workerman/workerman/Events/Select.php(311): Workerman\\Connection\\TcpConnection->baseRead(Resource id #442)
#20 /Users/mac/poj
/webman/vendor/workerman/workerman/Worker.php(1635): Workerman\\Events\\Select->loop()
#21 /Users/mac/poj
/webman/vendor/workerman/workerman/Worker.php(1426): Workerman\\Worker::forkOneWorkerForLinux(Object(Workerman\\Worker))
#22 /Users/mac/poj
/webman/vendor/workerman/workerman/Worker.php(1400): Workerman\\Worker::forkWorkersForLinux()
#23 /Users/mac/poj
/webman/vendor/workerman/workerman/Worker.php(560): Workerman\\Worker::forkWorkers()
#24 /Users/mac/poj
/webman/vendor/workerman/webman-framework/src/support/App.php(131): Workerman\\Worker::runAll()
#25 /Users/mac/poj
/webman/start.php(4): support\\App::run()
#26 {main}"
}
"Error: Object of class Illuminate\\Database\\Query\\Expression could not be converted to string in /vendor/chance-fyi/operation-log/src/orm/illuminate/Log.php:90
用了 illuminate 的 decrement 就會(huì)這個(gè)錯(cuò)誤報(bào)錯(cuò)
Db::connection('mysql')->beginTransaction();
try {
$user = User::where('id', $id)->lockForUpdate()->first();
$user->decrement('account', $amount);
Db::connection('mysql')->commit();
} catch (\Exception $e) {
Db::connection('mysql')->rollback();
}