2016-03-19 5 views
0

Benim Kayıt:gösteri yanlış rekor id 5.2

ID : M110 (varchar) 
Name : Book 
Price : 3000 
Stock : 10 

Bence:

@foreach($barang as $key => $value) 
    <tr> 
     <td>{{ $value->id }}</td> 
     <td>{{ $value->name }}</td> 
     <td>{{ $value->price }}</td> 
     <td>{{ $value->stock }}</td> 
    </tr> 
@endforeach 

Benim denetleyicisi:

public function show($id) 
{ 
    $barang = Barang::find($id); 

    return view('barang.show', compact('barang')); 
} 

My Sonuç:

ID : 0 
Name : Book 
Price : 3000 
Stock : 10 

aynı kimliği nasıl veritabanından (varchar) gösterebilirim?

cevap

0

Sen modelinde aşağıdaki deneyebilirsiniz:

protected $casts = [ 
    'id' => 'integer', 
]; 

Bu id o varchar olarak saklansa bile integer olarak atıldı sağlayacaktır. i 1,2 gibi numarasıyla kimliği eklerken https://laravel.com/docs/5.2/eloquent-mutators#attribute-casting

+0

Teşekkürler işte! Varchar ile tamsayıyı değiştiriyorum. korumalı $ casts = [ 'id' => 'varchar', ]; – Ezra

-1

Kimliğin, sorgunuz için kullanıldıkça döndürülmediğini tahmin ediyorum, dolayısıyla kayıt döndürülmeden önce bunu biliyorsunuzdur. Kimliği, sorgunuzdan yazdırabilirsiniz.

Barang :: find işlevi gerçekte ne yapar?

+1

'Barang ::, bir 'Barang' modeli –

+0

için' yöntemi) (' işlevleri standart laravel 'bulmak için muhtemeldir() bulmak 3,111,222, doğru kimliği gösterir. – Ezra