加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

php – 为什么Laravel Eloquent生成没有引号的SQL?

发布时间:2020-12-14 19:40:40 所属栏目:大数据 来源:网络整理
导读:我正在尝试在我的Laravel安装上运行sudo php artisan migrate db:seed并收到以下错误: [IlluminateDatabaseQueryException] Array to string conversion (SQL: insert into `sponsor_phones` (`phone_number`,`type`,`is_primary`,`sponsor_id`,`updated
我正在尝试在我的Laravel安装上运行sudo php artisan migrate db:seed并收到以下错误:

[IlluminateDatabaseQueryException]                                                                                                          
  Array to string conversion (SQL: insert into `sponsor_phones` (`phone_number`,`type`,`is_primary`,`sponsor_id`,`updated_at`,`created_at  
  `) values (247-216-6255 x4356,Home,1,101,2017-05-30 23:31:59,2017-05-30 23:31:59))

似乎SQL Eloquent正在为播种创建缺少引号的地方.在正确的位置(下方)添加引号可以运行它.

insert into 
`sponsor_phones` 
(`phone_number`,`created_at`
 ) 
  values 
  (
  '(732) 540-9730','Busi',51,'2017-05-27 21:53:44','2017-05-27 21:53:44');

我不确定是什么导致了这个错误,并且搜索Eloquent没有添加引用的原因似乎未能产生任何有用的结果.

我有一个repository,所以你可以看看(因为作为一个开源项目,它还需要一个.)

解决方法

问题不在于报价.在ModelFactory.php中,在函数getTypePhone,getTypeEmail和getTypeAddress中返回

return $faker->randomElements(array('Work','Cell','Home',"VoIP"));

$faker-> randomElements返回一个数组.相反,使用$faker-> randomElement从数组中返回单个元素.

return $faker->randomElement(array('Work',"VoIP"));

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读