แพ็คเกจ spatie/laravel-activitylog
มีฟังก์ชันที่ใช้งานง่ายเพื่อบันทึกกิจกรรมของผู้ใช้แอปของคุณ นอกจากนี้ยังสามารถบันทึกเหตุการณ์ของโมเดลได้โดยอัตโนมัติอีกด้วย แพ็คเกจจะจัดเก็บกิจกรรมทั้งหมดในตาราง activity_log
นี่คือการสาธิตวิธีการใช้งาน:
activity ()-> log ( ' Look, I logged something ' );
คุณสามารถดึงข้อมูลกิจกรรมทั้งหมดได้โดยใช้โมเดล SpatieActivitylogModelsActivity
Activity:: all ();
นี่เป็นตัวอย่างขั้นสูงเพิ่มเติม:
activity ()
-> performedOn ( $ anEloquentModel )
-> causedBy ( $ user )
-> withProperties ([ ' customProperty ' => ' customValue ' ])
-> log ( ' Look, I logged something ' );
$ lastLoggedActivity = Activity:: all ()-> last ();
$ lastLoggedActivity -> subject ; //returns an instance of an eloquent model
$ lastLoggedActivity -> causer ; //returns an instance of your user model
$ lastLoggedActivity -> getExtraProperty ( ' customProperty ' ); //returns 'customValue'
$ lastLoggedActivity -> description ; //returns 'Look, I logged something'
นี่คือตัวอย่างในการบันทึกเหตุการณ์
$ newsItem -> name = ' updated name ' ;
$ newsItem -> save ();
//updating the newsItem will cause the logging of an activity
$ activity = Activity:: all ()-> last ();
$ activity -> description ; //returns 'updated'
$ activity -> subject ; //returns the instance of NewsItem that was saved
การเรียก $activity->changes()
จะส่งคืนอาร์เรย์นี้:
[
' attributes ' => [
' name ' => ' updated name ' ,
' text ' => ' Lorum ' ,
],
' old ' => [
' name ' => ' original name ' ,
' text ' => ' Lorum ' ,
],
];
เราลงทุนทรัพยากรจำนวนมากเพื่อสร้างแพ็คเกจโอเพ่นซอร์สที่ดีที่สุดในระดับเดียวกัน คุณสามารถสนับสนุนเราได้โดยการซื้อหนึ่งในผลิตภัณฑ์ที่ต้องชำระเงินของเรา
เราขอขอบคุณอย่างยิ่งที่คุณส่งโปสการ์ดจากบ้านเกิดของคุณถึงเรา โดยระบุว่าคุณใช้แพ็คเกจใดของเรา คุณจะพบที่อยู่ของเราในหน้าติดต่อของเรา เราเผยแพร่โปสการ์ดที่ได้รับทั้งหมดบนวอลล์โปสการ์ดเสมือนของเรา
คุณจะพบเอกสารประกอบได้ที่https://spatie.be/docs/laravel-activitylog/introduction
พบว่าตัวเองติดอยู่กับการใช้แพ็คเกจใช่ไหม? พบข้อผิดพลาดหรือไม่? คุณมีคำถามหรือข้อเสนอแนะทั่วไปในการปรับปรุงบันทึกกิจกรรมหรือไม่? อย่าลังเลที่จะสร้างปัญหาบน GitHub เราจะพยายามแก้ไขปัญหาโดยเร็วที่สุด
คุณสามารถติดตั้งแพ็คเกจผ่านทางผู้แต่ง:
composer require spatie/laravel-activitylog
แพ็คเกจจะลงทะเบียนเองโดยอัตโนมัติ
คุณสามารถเผยแพร่การย้ายข้อมูลด้วย:
php artisan vendor:publish --provider= " SpatieActivitylogActivitylogServiceProvider " --tag= " activitylog-migrations "
หมายเหตุ : การย้ายข้อมูลเริ่มต้นจะถือว่าคุณใช้จำนวนเต็มสำหรับรหัสโมเดลของคุณ หากคุณใช้ UUID หรือรูปแบบอื่น ให้ปรับรูปแบบของช่อง subject_id และ Causer_id ในการย้ายข้อมูลที่เผยแพร่ก่อนดำเนินการต่อ
หลังจากเผยแพร่การย้ายข้อมูลแล้ว คุณสามารถสร้างตาราง activity_log
ได้โดยการรันการย้ายข้อมูล:
php artisan migrate
คุณสามารถเลือกเผยแพร่ไฟล์กำหนดค่าด้วย:
php artisan vendor:publish --provider= " SpatieActivitylogActivitylogServiceProvider " --tag= " activitylog-config "
โปรดดู CHANGELOG สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงล่าสุด
โปรดดูการอัปเกรดเพื่อดูรายละเอียด
composer test
โปรดดูการมีส่วนร่วมเพื่อดูรายละเอียด
หากคุณพบข้อบกพร่องเกี่ยวกับการรักษาความปลอดภัย โปรดส่งอีเมลไปที่ [email protected] แทนการใช้ตัวติดตามปัญหา
และขอขอบคุณเป็นพิเศษสำหรับ Caneco สำหรับโลโก้และ Ahmed Nagi สำหรับงานทั้งหมดที่เขาทำใน v4
ใบอนุญาตเอ็มไอที (MIT) โปรดดูไฟล์ใบอนุญาตสำหรับข้อมูลเพิ่มเติม