Laravel:连接错误PDO

Posted

技术标签:

【中文标题】Laravel:连接错误PDO【英文标题】:Laravel: Connection error PDO 【发布时间】:2016-03-29 21:28:21 【问题描述】:

我已经让我的控制器将数据插入到我的数据库中,而 Task 是模型文件。

app/http/controller/UsersTableController:

public function store() 
    $user = new Task;
    $user->name = Input::get('name');
    $user->PhoneNo = Input::get('PhoneNo');
    $user->password = Hash::make(Input::get('password'));
    $user->save();
    return Redirect::to('/')->with('success','You have been successfully subscribe to us.');

任务模型:

<?php
    namespace App;
   use Illuminate\Database\Eloquent\Model;
   class Task extends \Eloquent
   
       protected $table ='users';
       public $timestamp =  'false';
   

我的路线:

Route::post('/PostForm', array('uses'=>'UsersTable@store'));

以及我想通过它将数据保存到保存为Register.blade.php的数据库中的表单

<form action="PostForm" method="post">
  First name: <input type="text" name="name"><br>
  Phone Number: <input type="number" name="PhoneNo"><br>
  Password: <input type="password" name="password" mak=8>
  <button type="submit">Submit</button><br>
</form>

当我按下提交按钮时,我在浏览器屏幕上看到了什么......

Connection.php 第 651 行中的 QueryException:SQLSTATE[42S22]:找不到列:1054 '字段列表'中的未知列 'updated_at'(SQL:插入用户(名称、PhoneNo、密码、updated_at、created_at)值( romiii, 9876543210, asderf, 2015-12-23 10:02:56, 2015-12-23 10:02:56))

Connection.php 第 390 行中的 PDOException:SQLSTATE[42S22]:找不到列:1054 '字段列表'中的未知列 'updated_at'

【问题讨论】:

【参考方案1】:

要阻止 Eloquent 自动处理时间戳,您需要将 $timestamps 属性设置为 false。

public $timestamps = false

请注意,您将它设置为一个 字符串,它不会计算为布尔值 false。

【讨论】:

但是,我在控制器中将数据插入数据库的方法是否正确? 是的,但这不是问题所在,请再次阅读我的回答,如果它解决了您的问题,请将其标记为已接受。 这对我有用。我认为将 updated_time 保存为每个表中的默认值是一个安全选项。

以上是关于Laravel:连接错误PDO的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 和 oracle 的连接

使用nginx服务器和AWS RDS的Laravel出现“连接太多”错误

使用 symfony 和 MAMP 时出现 PDO 连接错误

如何详细说明工匠命令? -- 总是让 PDO 连接被拒绝

在连接类中使用 PDO 时如何显示 mysql 错误?

使用 ODBC 使用 msaccess 创建 PHP PDO 连接时出现致命错误