*/ protected $fillable = [ 'kegiatan_id', 'id_kelas', ]; /** * The attributes that should be cast. * * @var array */ protected $casts = [ 'created_at' => 'datetime', 'updated_at' => 'datetime', ]; /** * Relasi: KegiatanKelas belongs to Kegiatan * * @return \Illuminate\Database\Eloquent\Relations\BelongsTo */ public function kegiatan() { return $this->belongsTo(Kegiatan::class, 'kegiatan_id', 'kegiatan_id'); } /** * Relasi: KegiatanKelas belongs to Kelas * * @return \Illuminate\Database\Eloquent\Relations\BelongsTo */ public function kelas() { return $this->belongsTo(Kelas::class, 'id_kelas', 'id'); } /** * Scope: Filter by kegiatan * * @param \Illuminate\Database\Eloquent\Builder $query * @param string $kegiatan_id * @return \Illuminate\Database\Eloquent\Builder */ public function scopeByKegiatan($query, $kegiatan_id) { return $query->where('kegiatan_id', $kegiatan_id); } /** * Scope: Filter by kelas * * @param \Illuminate\Database\Eloquent\Builder $query * @param int $id_kelas * @return \Illuminate\Database\Eloquent\Builder */ public function scopeByKelas($query, $id_kelas) { return $query->where('id_kelas', $id_kelas); } /** * Accessor: Nama kegiatan * * @return string */ public function getNamaKegiatanAttribute() { return $this->kegiatan ? $this->kegiatan->nama_kegiatan : '-'; } /** * Accessor: Nama kelas * * @return string */ public function getNamaKelasAttribute() { return $this->kelas ? $this->kelas->nama_kelas : '-'; } }