2014-12-24 10 views
11

इसलिए मैं लार्वेल के साथ एक फॉर्म बनाने की कोशिश कर रहा हूं लेकिन नए संस्करण के अलावा उन्होंने फॉर्म हटा दिया! लेकिन मैं प्राप्त कर सकते हैं इसकॉलम नहीं मिला: 1054 अज्ञात कॉलम लार्वेल

इसलिए यहाँ चल रहा है:

Route::post('/register', function() 
{ 
    $user = new User; 
    $user-> u_n = Input::get('u_n'); 
    $user->save(); 
    return View::make('thanks')->with('theEmail',$theEmail); 
}); 

और मेरे ब्लेड:

{{Form::open(array('url'=>'register'))}} 

username : {{Form::label('u_n', 'E-Mail Address');}} 
{{Form::text('u_n');}} 
{{Form::submit('');}} 

u_n मेरी mysql डेटा बेस क्षेत्र का नाम है और यह वास्तविक त्रुटि है:

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'updated_at' in 'field list' (SQL: insert into `users` (`u_n`, `updated_at`, `created_at`) values (sepehr, 2014-12-24 14:32:55, 2014-12-24 14:32:55)) 
+1

रीसेट तो अपने मॉडल '$ timestamps' के रूप में सही सेट है, लेकिन डेटाबेस तालिका उचित कॉलम नहीं है? –

+0

संभावित डुप्लिकेट https://stackoverflow.com/questions/28277955/laravelunknown-column-updated-at –

उत्तर

31

ऐसा इसलिए होता है क्योंकि लार्वेल मानता है कि आपका उपयोग करना चाहते हैं 0 और created_at आपके मॉडल के लिए टाइमस्टैम्प। तो यह भी मानता है कि वे डेटाबेस में मौजूद हैं। आप या तो

public $timestamps = false; 

Laravel Docs

वैसे जोड़कर दो कॉलम या अपने मॉडल के लिए अक्षम टाइम स्टांप बना सकते हैं: आप माइग्रेशन का उपयोग कर रहे हैं, तो टाइमस्टैम्प कॉलम एक हवा जोड़ रहा है।

Schema::table('table_name', function(Blueprint $table){ 
    $table->timestamps(); 
} 
+0

बहुत बहुत धन्यवाद, मैं चला गया और मैन्युअल रूप से 2 कॉलम बनाए और यह – Greatone

+0

काम किया, मैं मदद कर सकता था। हल करने के रूप में अपने प्रश्न को चिह्नित करने के लिए उत्तर स्वीकार करें। धन्यवाद – lukasgeiter

0

यह मेरे लिए चाल है।

 $table->timestamp('created_at')->nullable(); 
     $table->timestamp('updated_at')->nullable();: 

फिर से आपके माइग्रेशन

php artisan migrate:reset 
    php artisan migrate 
संबंधित मुद्दे