程序员day不知道day几了——新的编程语言

叨叨几句 

中秋回来后,师父和我说:别用Springboot了,你在Springboot卡太久了。我们都是用PHP的,你用fastadmin写吧。OK,重新写。我在学校只学了C、C++、java和咪咪点python,我连PHP该用什么软件写都不知道。百度搭环境,一上午,没搭好,因为mysql抽疯了,所以要换一个版本,安装和之前一样,结果死活都启动不了。下午,有前辈来查看我这个菜鸟的进度了,此时apache和PHP已经装好了,他嫌慢,直接给我在PhpStorm上用了ftp连到远程服务器,nice~不用弄环境了,mysql也是直接连远程,哈哈本地上是屁都没有,管呢,能用就行。第二天,因为我现在在做的接口也不急着用,我打算好好学一下tp5,然后再学fastadmin,最后也是他嫌慢,直接把tp5框架和fastadmin装在了那个远程服务器,让我直接上手写。我觉得没问题,就只是我现在都写完接口和文档了,也还不会弄tp5框架和安装fastadmin。。。还有一点,我感觉眼睛快瞎了,视力直线下降、每天眼睛都好疼,这能有什么办法缓解吗?枯了

在敲的过程中遇到的几个问题:

1.使用fastadmin的一键生成crud,类型为datetime的字段,我希望能自动填充时间。fastadmin填充的时间戳在模型中是$autoWriteTimeStamp=‘int’,在进行数据库操作时会报错,不记得原话了,大概是日期类型不对。解决方法有两个:一是在每个模型中,修改$autoWriteTimeStamp,改为$autoWriteTimeStamp=‘datetime’,除此之外还要加一行,$dateFormat='Y-m-d H:i:s',文档和网上的解决方法好多都只改了$autoWriteTimeStamp的值,没定义日期格式,不定义是不行的,还是会报同样的错(当时我在坑里待了很久,哈)。二是在配置文件中改,在database.php里把那两行写上,然后注意!要把模型中的$autoWriteTimeStamp定义删掉。

    //在模型中, 自动写入时间戳字段
    protected $autoWriteTimestamp = 'datetime';
    protected $dateFormat = 'Y-m-d H:i:s';


//在database.php中找到如下位置并做修改。注:改成true还是datetime记不清了,用的时候可以试一下到底是哪个,哈尴尬。
// 自动写入时间戳字段
 'auto_timestamp'  => true,
// 时间字段取出后的默认时间格式,默认为Y-m-d H:i:s
 'datetime_format' => false,

2.一对多关联模型,一个task有多个file,在task的模型中添加如下代码。hasMany('关联模型名','关联表外键','主键')。一开始,field里我没有写task_id,就会报错,报错信息我已经忘了,大概是和模型相关的,在field里加上关联表外键,也就是这里的task_id就好了。

public function file(){
      return $this->hasMany('File','task_id','id')
                ->field('id,task_id,belong_to,filename,filetype,file');
}

在task控制器中使用:

//实例化模型
$this->model = new \app\admin\model\zhdd\Task;
//当前是否为关联查询
$this->relationSearch = true;
//查询task表中全部数据
$result = $this->model
            ->with(['file'])
            ->order('id','desc')
            ->page($page,$pageSize)
            ->select();

3.还有一个没解决的,我配置了多个数据库,导致读操作正常,写操作提示Access denied for user 'root'@'localhost' (using password: NO)。我现在暂时的解决方法是写操作不用事务,直接进行写操作,这样就没问题。之前没配置另一个数据库时用事务进行的写操作也是正常运行的,可能数据库配置有问题,也许我不应该在配置文件中配置,应该在方法中或者模型里动态配置,可是在此之前我尝试过动态配置,方法中、模型里都试过了,它不行,所以我才在配置文件中配置的。算了,能跑就行吧(乐),要是他们说写操作必须用事务来写,那就再说。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值