未找到列:1054 未知列拉拉维尔

2022-08-30 20:50:18

所以我试图用laravel制作一个表单,但除了新版本之外,他们删除了表单!但我可以让它运行

所以这里是:

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

发生这种情况是因为 Laravel 假设您要为模型使用 和 时间戳。因此,它还假设它们存在于数据库中。您可以创建两列,也可以通过添加updated_atcreated_at

public $timestamps = false;

拉拉维尔文档

顺便说一句:如果您使用的是迁移,则添加时间戳列轻而易举。

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

答案 2

这为我做到了。

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

然后重置迁移

    php artisan migrate:reset
    php artisan migrate

推荐