Relasi Database dan sistem database pada laravel

Saya ada 4 Table, 1. Pembuatan 2. Admin 3. Bahan 4. Produk

Pembuatan -> Disini isinya untuk membuat suatu produk yang dimana di isi field nama produk, penanggung jawab (ambil dari table admin). bahan yang di pakai dan jumlah bahan (ambil dari table bahan). dan ketika produk jadi, masuk ke table produk = nama dan jumlah yang sudah jadi.

Admin -> nama admin untuk table pembuatan Bahan -> nama bahan dan jumlah bahan Produk -> menampung nama dan jumlah produk yang sudah dibuat.

Nah saya masih bingung relation mana yang di pakai, dan juga bagaimana membuat sistem otomatis mengisi table, ketika :

- Bahan produk ketika dipakai untuk pembuatan, jumlahnya berkurang dan ketika pembuatan gagal (cancel) jumlahnya kembali bertambah. - Produk, ketika pembuatan produk jadi (proses selesai) di table pembuatan. Nama produk dan Jumlah produk yang slesai masuk ke table ini

Atau agan ada saran table yang lebih kompleks tapi sesuai yang saya inginkan? Makasih sebelumnya

avatar asofyann
@asofyann

29 Kontribusi 7 Poin

Diperbarui 6 tahun yang lalu

3 Jawaban:

pakai query database dari laravel aja gan

avatar sptndc
@sptndc

247 Kontribusi 59 Poin

Dipost 6 tahun yang lalu

gimana caranya gan ?

avatar asofyann
@asofyann

29 Kontribusi 7 Poin

Dipost 6 tahun yang lalu

Kira-kira dengan relasi seperti ini

Pembuatan Model-nya

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Pembuatan extends Model
{
     protected $table = 'pembuatan';

     protected $fillable = [];

     public function admin()
     {
         return $this->belongsTo('App\Admin'); // ambil data dari model admin
     }

     public function bahan()
     {
         return $this->belongsTo('App\Bahan'); // ambil data dari model bahan
     }
}

Kalo untuk yang selebihnya ane belum sampe gan. Tapi pastikan pada tabel pembuatan terdapat admin_id dan bahan_id yang sudah diberikan foreign key.

PembuatanController Controller-nya

<?php

namespace App\Http\Controllers;

use App\Pembuatan;
use Illuminate\Http\Request;

class PembuatanController extends Controller
{
      public function index()
      {
           $pembuatan = Pembuatan::all();
           return view('pembuatan', compact('pembuatan'));
      }
}

Pembuatan View-nya

@foreach ($pembuatan->admin as $pa)
      <p>{{ $pa->nama_admin }}</p>
@endforeach

@foreach ($pembuatan->bahan as $pb)
      <p>{{ $pb->bahanygdipakai }}</p>
      <p>{{ $pb->jumlah_bahan }}</p>
@endforeach

eksperimen aja coba gan baca-baca dokumentasi dari laravel gausah takut error. Semoga membantu

avatar sptndc
@sptndc

247 Kontribusi 59 Poin

Dipost 6 tahun yang lalu

Login untuk ikut Jawaban