2015-12-25 9 views
15

मैं इस प्रवास है:सुवक्ता मॉडल रिटर्न 0 के रूप में प्राथमिक कुंजी

class Provincia extends Model 
{ 
    protected $primaryKey = 'codigo'; 
    public $timestamps = false; 
} 

मैं माइग्रेशन चलाने और बचाने के इस तरह डेटा::

$provincia = new Provincia; 
$provincia->codigo = "BA"; 
$provincia->nombre = "Buenos Aires"; 
$provincia->save(); 

Schema::create('provincias', function (Blueprint $table) { 
    $table->string('codigo', 2); 
    $table->string('nombre', 50); 
    $table->timestamp('creado'); 
    $table->primary('codigo'); 
}); 

यह मेरा मॉडल है

समस्या यह है कि जब मैं सब और डंप प्राप्त करता हूं:

$provincias = Provincia::all(); 
return $provincias; 

प्राथमिक कुंजी "Codigo" हमेशा 0 है यहां तक ​​कि जब मैं डेटाबेस तालिका की जाँच करें और यह उचित मान है:

{ 
    codigo: 0, 
    nombre: "Buenos Aires", 
    creado: "2015-12-24 21:00:24" 
} 
+2

मॉडल 'सार्वजनिक $ incrementing = false' पर गलत पर वृद्धि करने की कोशिश करें; देखें कि यह – nrivero

उत्तर

46

आप अपने मॉडल तो वाक्पटु अपनी प्राथमिक उम्मीद नहीं है पर public $incrementing = false; स्थापित करने की कोशिश कर सकते एक autoincrement प्राथमिक कुंजी होने के लिए कुंजी।

+0

काम करता है, धन्यवाद, धन्यवाद! – Alan

+1

धन्यवाद एक गुच्छा। यह आश्चर्यजनक है कि लैरावेल 5.1 में मुझे इस संपत्ति की आवश्यकता नहीं थी, लेकिन 5.4 में इसकी मांग है। –

+0

मैं अभी 5.1 से लैरवेल 5.4 में स्थानांतरित हो गया हूं। इस अमूल्य टिप के लिए बहुत बहुत धन्यवाद। – DavidHyogo

संबंधित मुद्दे