weixin_48929566
2020-06-24 22:44
采纳率: 100%
浏览 164
已采纳

laravel 更改DB类型之后读取值出错

数据库有张学生信息表

 

id,stNo,stName,date
1,20200101,test,2020-01-01
2,20200102,test1,2020-01-02
3,20200103,test2,2020-01-03
4,R20200101,test3,2020-01-04
5,R20200101,test4,2020-01-05

在Laravel的Model里面直接查询数据并返回

 
 

return $this->orderBy('date','desc')->paginate(25);

Controller里面也是直接调用取值

 

$studentModel = new StudentModel();
$studentList = $studentModel->studenList();
foreach($studentList as $key=>$value){
    echo $value->stNo;
}

只有id是1,2,3的stNo正常输出,4和5的stNo都是0。

 

stNo建表的时候字段类型是Int,后来把这个字段的数据类型改成 VARCHAR(50)

 

修改之后也执行过Laravel清楚缓存的命令但是还是不能正常取到数据

 

php artisan cache:clear

 

表创建和字段类型修改都没有用Laravel的ORM,直接在数据里写的SQL。

 

查了好久都没有查到原因。。。望各位大神不吝赐教

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • evolutionr 2020-06-28 11:23
    已采纳

    估计是你在Model中对stNo做了特殊处理,比如定义了获取属性方法getStNoAttribute

    点赞 打赏 评论

相关推荐 更多相似问题