Log Pelatihan
Bangun dengan AI Agent
Backend Log Kehadiran Pelatihan

Template Backend Log Kehadiran Pelatihan
Kehadiran Pelatihan, Nilai, dan Sertifikat

Backend log kehadiran pelatihan siap produksi di Back4app dengan log kursus, nilai ujian, dan penyimpanan sertifikat. Termasuk diagram ER, kamus data, skema JSON, playground API, dan prompt AI Agent untuk bootstrap cepat.

Kesimpulan Log Pelatihan

Template ini memberikan backend log kehadiran pelatihan dengan log kursus, nilai ujian, dan penyimpanan sertifikat sehingga koordinator dapat menyimpan sesi, hasil, dan bukti penyelesaian di satu tempat.

  1. Pelacakan log kursusModel setiap entri TrainingCourse dan AttendanceLog agar instruktur dapat mencatat siapa yang hadir di sesi mana.
  2. Penangkapan nilai ujianSimpan nilai ExamScore dengan pointer kursus dan pelatih yang terkait untuk tinjauan cepat.
  3. Penyimpanan sertifikatSimpan file CertificateStorage yang terlampir pada event penyelesaian yang benar dan profil pelatih.

Ikhtisar Backend Catatan Kehadiran Pelatihan

Regulator mengharapkan bukti kehadiran pelatihan tahan lama: cukup tidak dapat diubah untuk dipercaya, cukup fleksibel untuk meningkatkan program seiring waktu. Solusinya bersifat operasional, bukan motivasional. Model TrainingCourse, AttendanceLog, ExamScore, dan CertificateStorage di Back4app untuk menjadikan kontrol kehadiran pelatihan operasional: persetujuan, bukti, dan pengecualian ditangkap di tempat kerja yang sebenarnya. Skema mencakup User (username, email, password), TrainingCourse (courseCode, title, sessionDate, instructor), AttendanceLog (trainee, trainingCourse, status, checkedInAt), ExamScore (trainee, trainingCourse, score, passed), dan CertificateStorage (trainee, trainingCourse, file, issuedAt) dengan autentikasi dan akses terkontrol sudah tersedia. Hubungkan frontend pilihan Anda dan luncurkan lebih cepat.

Terbaik untuk:

Sistem kehadiran pelatihanDasbor catatan kursusAlat pelacakan skor ujianPortal penyimpanan sertifikatTim operasional dan pelatihan lapanganTim memilih BaaS untuk produk pelatihan

Kehadiran Pelatihan: snapshot backend

Pelatihan membantu dalam kehadiran pelatihan, tetapi tidak dapat mengkompensasi data yang terpisah di tiga alat dan empat konvensi penamaan.

Pusat ini menyoroti TrainingCourse, AttendanceLog, dan ExamScore sehingga Anda dapat membandingkan tumpukan klien terhadap entitas, bidang, dan hubungan yang sama.

Fitur Inti Log Pelatihan

Setiap kartu teknologi di hub ini menggunakan skema backend kehadiran pelatihan yang sama dengan TrainingCourse, AttendanceLog, ExamScore, dan CertificateStorage.

Manajemen kursus pelatihan

TrainingCourse menyimpan courseCode, judul, sessionDate, dan instruktur.

Pencatatan kehadiran

AttendanceLog mencatat peserta pelatihan, trainingCourse, status, dan checkedInAt.

Pelacakan nilai ujian

ExamScore menghubungkan peserta pelatihan, trainingCourse, nilai, dan lulus.

Penyimpanan sertifikat

CertificateStorage menyimpan trainee, trainingCourse, file, dan issuedAt.

Mengapa Membangun Backend Catatan Kehadiran Pelatihan Anda dengan Back4app?

Back4app memberi Anda primitif kursus-pelatihan, catatan-kehadiran, skor-ujian, dan penyimpanan-sertifikat sehingga koordinator dapat fokus pada penyampaian sesi alih-alih perbaikan backend.

  • Catatan kursus dan kehadiran: Kelas TrainingCourse dan AttendanceLog memungkinkan Anda melacak kehadiran berdasarkan sessionDate, courseCode, dan checkedInAt.
  • Skor yang diikat pada acara pelatihan: ExamScore menghubungkan setiap skor dengan peserta didik dan TrainingCourse, yang menjaga ulasan lulus/gagal terhubung dengan catatan kursus.
  • Sertifikat dengan jalur pengambilan yang nyata: CertificateStorage menyimpan issuedAt dan file sehingga bukti penyelesaian tetap terikat pada hasil pelatihan yang tepat.

Jalankan log pelatihan, skor ujian, dan penyimpanan sertifikat dari satu kontrak backend di setiap platform.

Manfaat Utama

Backend kehadiran pelatihan yang membantu tim mencatat sesi, meninjau skor, dan menyimpan sertifikat dengan lebih sedikit pekerjaan pengaturan.

Peluncuran log kursus cepat

Mulai dari TrainingCourse alih-alih membuat tabel sesi dan hubungan dari awal.

Jejak kehadiran dan skor

Tautkan entri AttendanceLog dan ExamScore ke bidang trainee dan trainingCourse yang sama untuk tindak lanjut yang jelas.

Pengambilan sertifikat berdasarkan kursus

Simpan file CertificateStorage yang terikat pada penyelesaian kursus agar staf operasional dapat menemukan bukti dengan cepat.

Akses dikendalikan untuk data pelatihan

Gunakan ACL/CLP sehingga hanya staf yang berwenang yang dapat memperbarui log kehadiran, nilai ujian, atau file sertifikat.

Model tunggal untuk pengguna lapangan dan kantor

Bagikan TrainingCourse, AttendanceLog, ExamScore, dan CertificateStorage melalui satu kontrak API alih-alih alat terpisah.

Bootstrap yang dibantu AI

Hasilkan skema, izin, dan panduan integrasi dengan satu permintaan terstruktur.

Siap untuk meluncurkan aplikasi log kehadiran pelatihan Anda?

Biarkan Agen AI Back4app membangun backend kehadiran pelatihan Anda dan menghasilkan log kursus, nilai ujian, dan penyimpanan sertifikat dari satu prompt.

Gratis untuk memulai — 50 prompt Agen AI/bulan, tanpa perlu kartu kredit

Tumpukan Teknis

Semua termasuk dalam template backend kehadiran pelatihan ini.

Frontend
13+ teknologi
Backend
Back4app
Basis data
MongoDB
Otentikasi
Otentikasi bawaan + sesi
API
REST dan GraphQL
Waktu nyata
Live Queries

Diagram ER

Model hubungan entitas untuk skema backend kehadiran pelatihan.

Lihat sumber diagram
Mermaid
erDiagram
    Trainer ||--o{ TrainingCourse : "trainer"
    Trainer ||--o{ AttendanceLog : "markedBy"
    Trainer ||--o{ ExamScore : "recordedBy"
    Trainer ||--o{ Certificate : "issuedBy"
    TrainingCourse ||--o{ AttendanceLog : "course"
    TrainingCourse ||--o{ ExamScore : "course"
    TrainingCourse ||--o{ Certificate : "course"

    Trainer {
        String objectId PK
        String username
        String email
        String password
        String fullName
        String role
        Date createdAt
        Date updatedAt
    }

    TrainingCourse {
        String objectId PK
        String courseCode
        String title
        Date scheduledDate
        String location
        String trainerId FK
        Date createdAt
        Date updatedAt
    }

    AttendanceLog {
        String objectId PK
        String courseId FK
        String traineeName
        Date attendanceDate
        String status
        String notes
        String markedById FK
        Date createdAt
        Date updatedAt
    }

    ExamScore {
        String objectId PK
        String courseId FK
        String traineeName
        Date examDate
        Number score
        Boolean passed
        String recordedById FK
        Date createdAt
        Date updatedAt
    }

    Certificate {
        String objectId PK
        String courseId FK
        String traineeName
        String certificateNumber
        Date issueDate
        String fileUrl
        String issuedById FK
        Date createdAt
        Date updatedAt
    }

Alur Integrasi

Alur runtime khas untuk otentikasi, log kursus, pencatatan kehadiran, skor ujian, dan penyimpanan sertifikat.

Lihat sumber diagram
Mermaid
sequenceDiagram
  participant User
  participant App as Training Attendance Log App
  participant Back4app as Back4app Cloud

  User->>App: Sign in as trainer or coordinator
  App->>Back4app: POST /login
  Back4app-->>App: Session token

  User->>App: Open today's training course list
  App->>Back4app: GET /classes/TrainingCourse?order=scheduledDate
  Back4app-->>App: TrainingCourse rows

  User->>App: Mark attendance in the course log
  App->>Back4app: POST /classes/AttendanceLog
  Back4app-->>App: AttendanceLog objectId

  User->>App: Save exam score and attach certificate file
  App->>Back4app: POST /classes/ExamScore
  App->>Back4app: POST /classes/Certificate
  Back4app-->>App: ExamScore and Certificate records

  App->>Back4app: Query live updates for course attendance
  Back4app-->>App: AttendanceLog changes

Kamuskata Data

Referensi tingkat bidang untuk setiap kelas dalam skema kehadiran pelatihan.

BidangTipeDeskripsiDiperlukan
objectIdStringAuto-generated unique identifierOtomatis
usernameStringTrainer login name
emailStringTrainer email address
passwordStringHashed password (write-only)
fullNameStringTrainer display name
roleStringAccess role for the training workspace
createdAtDateAuto-generated creation timestampOtomatis
updatedAtDateAuto-generated last-update timestampOtomatis

8 bidang di Trainer

Keamanan dan Izin

Bagaimana strategi ACL dan CLP mengamankan pengguna, kursus pelatihan, log kehadiran, nilai ujian, dan penyimpanan sertifikat.

Batasan akun pengguna

Hanya pengguna yang dapat memperbarui atau menghapus profil mereka; pengguna lain tidak dapat memodifikasi bidang identitas.

Integritas kursus dan log

Hanya staf yang berwenang yang dapat membuat atau menghapus entri TrainingCourse, AttendanceLog, ExamScore, dan CertificateStorage.

Akses terbatas ke bukti pelatihan

Batasi bacaan sehingga manajer, koordinator, atau trainee yang ditugaskan hanya melihat log kursus dan file sertifikat yang seharusnya mereka akses.

Skema (JSON)

Definisi skema JSON mentah siap untuk disalin ke Back4app atau digunakan sebagai referensi implementasi.

JSON
{
  "classes": [
    {
      "className": "Trainer",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "username": {
          "type": "String",
          "required": true
        },
        "email": {
          "type": "String",
          "required": true
        },
        "password": {
          "type": "String",
          "required": true
        },
        "fullName": {
          "type": "String",
          "required": true
        },
        "role": {
          "type": "String",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "TrainingCourse",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "courseCode": {
          "type": "String",
          "required": true
        },
        "title": {
          "type": "String",
          "required": true
        },
        "scheduledDate": {
          "type": "Date",
          "required": true
        },
        "location": {
          "type": "String",
          "required": true
        },
        "trainer": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Trainer"
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "AttendanceLog",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "course": {
          "type": "Pointer",
          "required": true,
          "targetClass": "TrainingCourse"
        },
        "traineeName": {
          "type": "String",
          "required": true
        },
        "attendanceDate": {
          "type": "Date",
          "required": true
        },
        "status": {
          "type": "String",
          "required": true
        },
        "notes": {
          "type": "String",
          "required": false
        },
        "markedBy": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Trainer"
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "ExamScore",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "course": {
          "type": "Pointer",
          "required": true,
          "targetClass": "TrainingCourse"
        },
        "traineeName": {
          "type": "String",
          "required": true
        },
        "examDate": {
          "type": "Date",
          "required": true
        },
        "score": {
          "type": "Number",
          "required": true
        },
        "passed": {
          "type": "Boolean",
          "required": true
        },
        "recordedBy": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Trainer"
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "Certificate",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "course": {
          "type": "Pointer",
          "required": true,
          "targetClass": "TrainingCourse"
        },
        "traineeName": {
          "type": "String",
          "required": true
        },
        "certificateNumber": {
          "type": "String",
          "required": true
        },
        "issueDate": {
          "type": "Date",
          "required": true
        },
        "fileUrl": {
          "type": "String",
          "required": true
        },
        "issuedBy": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Trainer"
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    }
  ]
}

Bangun dengan Agen AI

Gunakan Agen AI Back4app untuk menghasilkan aplikasi kehadiran pelatihan yang nyata dari template ini, termasuk alur frontend, backend, otentikasi, serta pelatihan-kursus, log-kehadiran, skor-ujian, dan penyimpanan-sertifikat.

Agen AI Back4app
Siap untuk membangun
Buat backend aplikasi log kehadiran pelatihan di Back4app dengan skema dan perilaku yang tepat ini.

Skema:
1. Pengguna (gunakan bawaan Back4app): namaPengguna, email, kataSandi; objectId, createdAt, updatedAt (sistem).
2. TrainingCourse: courseCode (String, diperlukan), judul (String, diperlukan), sessionDate (Date, diperlukan), instruktur (Pointer ke Pengguna, diperlukan); objectId, createdAt, updatedAt (sistem).
3. AttendanceLog: peserta (Pointer ke Pengguna, diperlukan), trainingCourse (Pointer ke TrainingCourse, diperlukan), status (String, diperlukan), checkedInAt (Date); objectId, createdAt, updatedAt (sistem).
4. ExamScore: peserta (Pointer ke Pengguna, diperlukan), trainingCourse (Pointer ke TrainingCourse, diperlukan), skor (Number, diperlukan), lulus (Boolean, diperlukan); objectId, createdAt, updatedAt (sistem).
5. CertificateStorage: peserta (Pointer ke Pengguna, diperlukan), trainingCourse (Pointer ke TrainingCourse, diperlukan), file (File, diperlukan), issuedAt (Date, diperlukan); objectId, createdAt, updatedAt (sistem).

Keamanan:
- Hanya pengguna yang dapat memperbarui/menghapus profil mereka. Hanya staf yang berwenang yang dapat membuat/menghapus catatan pelatihan. Gunakan Cloud Code untuk validasi.

Otentikasi:
- Daftar, masuk, keluar.

Perilaku:
- Daftar kursus, buat log kehadiran, kirim skor ujian, dan simpan sertifikat.

Pesan:
- Aplikasi Back4app dengan skema, ACL, CLP; frontend untuk kursus, log kehadiran, skor ujian, dan penyimpanan sertifikat.

Tekan tombol di bawah untuk membuka Agen dengan prompt template ini yang terisi sebelumnya.

Ini adalah prompt dasar tanpa akhiran teknologi. Anda dapat mengadaptasi tumpukan frontend yang dihasilkan setelahnya.

Terapkan dalam beberapa menit50 prompt gratis / bulanTidak perlu kartu kredit

API Playground

Coba REST dan GraphQL endpoint terhadap skema kehadiran pelatihan. Respons menggunakan data tiruan dan tidak memerlukan akun Back4app.

Memuat playground…

Menggunakan skema yang sama seperti templat ini.

Pilih Teknologi Anda

Perluas setiap kartu untuk melihat cara mengintegrasikan TrainingCourse, AttendanceLog, dan ExamScore dengan tumpukan yang Anda pilih.

Flutter Kehadiran Pelatihan Backend

React Kehadiran Pelatihan Backend

React Native Kehadiran Pelatihan Backend

Next.js Kehadiran Pelatihan Backend

JavaScript Kehadiran Pelatihan Backend

Android Kehadiran Pelatihan Backend

iOS Kehadiran Pelatihan Backend

Vue Kehadiran Pelatihan Backend

Angular Kehadiran Pelatihan Backend

GraphQL Kehadiran Pelatihan Backend

REST API Kehadiran Pelatihan Backend

PHP Kehadiran Pelatihan Backend

.NET Kehadiran Pelatihan Backend

Apa yang Anda Dapatkan dengan Setiap Teknologi

Setiap stack menggunakan skema backend kehadiran pelatihan dan kontrak API yang sama.

Struktur data log pelatihan yang bersatu

Kelola kursus pelatihan, log kehadiran, nilai ujian, dan penyimpanan sertifikat dengan satu skema.

Log kursus untuk tim operasional

Lacak siapa yang menghadiri setiap sesi dan catatan kursus mana yang masih terbuka.

Tinjauan nilai ujian untuk manajer

Simpan nilai berdasarkan TrainingCourse dan peserta pelatihan sehingga tindak lanjut tetap terhubung dengan sesi yang tepat.

Penyimpanan sertifikat sebagai bukti penyelesaian

Lampirkan file penyelesaian ke hasil kursus yang benar dan catatan peserta pelatihan.

Perbandingan Kerangka Log Pelatihan

Bandingkan kecepatan pengaturan, gaya SDK, dan dukungan AI di semua teknologi yang didukung.

FrameworkWaktu PengaturanManfaat Log PelatihanTipe SDKDukungan AI
Sekitar 5 menitKode dasar tunggal untuk pemantauan kehadiran pelatihan di mobile dan web.SDK TertulisPenuh
Kurang dari 5 menitDasbor web cepat untuk log kursus dan nilai ujian.SDK TipePenuh
~3–7 menitAplikasi mobile lintas platform untuk pencatatan kehadiran lapangan.SDK TipePenuh
Pengaturan cepat (5 menit)Portal yang dirender di server untuk manajer pelatihan.SDK TipePenuh
~3–5 menitIntegrasi web ringan untuk log pelatihan.SDK TipePenuh
Sekitar 5 menitAplikasi Android asli untuk pemeriksaan kehadiran.SDK TipePenuh
Di bawah 5 menitAplikasi iOS asli untuk tinjauan nilai dan sertifikat.SDK TipePenuh
~3–7 menitUI web React untuk operasi pelatihan.SDK DiketikPenuh
Pengaturan cepat (5 menit)Aplikasi web perusahaan untuk alur kerja koordinator.SDK DiketikPenuh
Kurang dari 2 menitAPI GraphQL yang fleksibel untuk catatan pelatihan.API GraphQLPenuh
Pengaturan cepat (2 menit)integrasi REST API untuk kehadiran pelatihan.REST APIPenuh
~3 menitBackend PHP sisi server untuk log pelatihan.REST APIPenuh
~3–7 menitBackend .NET untuk kehadiran, nilai, dan sertifikat.SDK TipePenuh

Waktu pengaturan mencerminkan durasi yang diharapkan dari bootstrap proyek hingga kueri TrainingCourse atau AttendanceLog pertama menggunakan skema template ini.

Pertanyaan yang Sering Diajukan

Pertanyaan umum tentang membangun backend log kehadiran pelatihan dengan template ini.

Bagaimana pemimpin kehadiran pelatihan menangkap penyimpangan kebijakan sebelum menjadi risiko sistemik?
Bagaimana program kehadiran pelatihan menangkap pelatihan, pernyataan, dan tindakan korektif dengan jelas?
Apa jalur yang direkomendasikan untuk memperketat izin kehadiran pelatihan seiring pertumbuhan organisasi?
Bagaimana cara saya menjalankan kueri untuk kursus pelatihan dan log kehadiran dengan Flutter?
Bagaimana cara saya mengelola akses kehadiran pelatihan dengan Next.js Server Actions?
Bisakah React Native menyimpan data pelatihan secara offline?
Bagaimana cara mencegah akses sertifikat yang tidak sah?
Apa cara terbaik untuk menampilkan log pelatihan di Android?
Bagaimana alur penyimpanan sertifikat bekerja secara end-to-end?

Dipercaya oleh pengembang di seluruh dunia

Bergabunglah dengan tim yang mengirim produk kehadiran pelatihan lebih cepat dengan template Back4app

G2 Users Love Us Badge

Siap untuk Membangun Aplikasi Log Kehadiran Pelatihan Anda?

Mulai proyek log pelatihan Anda dalam hitungan menit. Tidak perlu kartu kredit.

Pilih Teknologi