【问题标题】:Column not found: 1054 Unknown column laravel未找到列:1054 未知列 laravel
【发布时间】:2015-02-22 15:58:12
【问题描述】:

所以我尝试使用 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))

【问题讨论】:

标签: php mysql laravel


【解决方案1】:

这是因为 Laravel 假设你想为你的模型使用 updated_atcreated_at 时间戳。所以它也假设它们存在于数据库中。您可以通过添加来创建两列或禁用模型的时间戳

public $timestamps = false;

Laravel Docs

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

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

【讨论】:

  • 非常感谢,我继续手动创建了 2 列,并且成功了
【解决方案2】:

这对我有用。

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

然后重置您的迁移

    php artisan migrate:reset
    php artisan migrate

【讨论】:

    猜你喜欢
    • 2020-05-13
    • 2021-08-08
    • 2019-11-11
    • 2016-04-29
    • 2018-02-21
    • 2015-12-08
    • 2018-11-02
    • 2019-10-02
    相关资源
    最近更新 更多