搜索

首页  >  问答  >  正文

PHP框架 Laravel Eloquent ORM 批量插入数据,创建时间 00000000000

foreach ($products as $v=>$a)
{
    $count[] = array('product_name' => $a['name'], 'product_weight' => $a['weight'], 'product_id' => $a['pid'], 'product_price' => $a['price'], 'order_id' => $order->id, 'card_phone' => $user->phone);
}
CountOrder::insert($count);

在使用 laravel 的批量插入数据时,

插入的数据的创建时间却都是 0000000;

创建时间 和 更新时间字段 如何正常保存呢 ,难道也要在数组里面写入吗?

大家讲道理大家讲道理2780 天前783

全部回复(3)我来回复

  • 黄舟

    黄舟2017-05-16 16:57:45

    雷雷 雷雷

    回复
    0
  • 高洛峰

    高洛峰2017-05-16 16:57:45

    其实可以使用save()

    $this->fill($count)->save();
    

    我的laravel教程专栏:/u/biaoyansu/blogs

    回复
    0
  • 大家讲道理

    大家讲道理2017-05-16 16:57:45

    laravel 默认维护created_at updated_at 需要在模型中声明 public $timestamps = false; 默认是true

    class Student extends Model
    {
        protected $table = 'student';//指定表名
        //protected $primaryKey = 'id';//id
        //自动维护时间戳 默认是true;
        //public $timestamps = false;
    
        protected function getDateFormat()
        {
            return time();//return当前时间戳
            //输出的时候已经帮我们格式化了不想格式化需加函数asDateTime()
        }
    
       /* protected function asDateTime($val)
        {
            return $val;//将$val  return回去 不做任何处理就不会格式化了
        }*/
    }

    回复
    0
  • 取消回复