百炼成钢
最近发表的话题
最近发表的评论
  • 如何移除详情和编辑页面的右上角操作键? at 3周前

    @一念沧海一念桑田 问题已解决,万分感谢

  • a_reply_requires_a_body 这个测试跑不过去? at 2个月前

    自问自答,这个应该是教学比较顺序的遗漏,
    做到55节后这里又正常了。

  • 同步删除回复报错? at 2个月前

    @jltxwesley 嗯。按照这边教程顺序反正走到我说的报错这一步时,Reply里的内容如下

    class Reply extends Model
    {
        use Favoritable,RecordsActivity;
    
        protected $guarded = [];
        protected $with = ['owner','favorites'];
    
        public function owner()
        {
            return $this->belongsTo(User::class,'user_id');  // 使用 user_id 字段进行模型关联
        }
    
        public function thread()
        {
            return $this->belongsTo(Thread::class);
        }
    }

    我上面提到的错误是写在Thread里面的。后面的小伙伴记得这一步删掉Threadreplies()方法下的两个with以解决test报错 :grinning:

  • 同步删除回复报错? at 2个月前

    @jltxwesley
    课程里
    $with = ['creator'];是这样的,不能加with关系,加了就会报错;

  • 同步删除回复报错? at 2个月前

    @jltxwesley
    感觉应该是作者遗漏了一些细节,因为我看到后面的这部分内容再次出现的时候两个with都没有了

  • 同步删除回复报错? at 2个月前

    @jltxwesley 跟教程里都是一致的

  • 同步删除回复报错? at 2个月前

    @jltxwesley

    public function replies()
        {
            return $this->hasMany(Reply::class)
                ->withCount('favorites')
                ->with('owner');
        }
  • 工具的选项与教程不一致,如何调整? at 2个月前

    @liyu001989 尝试了一下故意输出log,确实出现了该项目。再请问一下event里输出的是哪一类操作呢,我想试试看

  • 工具的选项与教程不一致,如何调整? at 2个月前

    @liyu001989 谷歌,今天刚安装试试的,那个cache是刚刚我用到缓存以后突然又出现了,log文件我本地是存在有的,但是依然没有显示

    file

  • 为何只要使用共享视图数据就会报错? at 2个月前

    自问自答,后面14章解释了问题

  • ORM 下如何实现同类别下同数量内容输出? at 3个月前

    @waney 这就要看你业务的具体需求了,这个方法也仅仅是迎合题意。如果你是真实业务需求,redis弄个list或set都可以,速度绝对流畅。如果一定要用mysql的话,把第一步whereIn换成循环limit 3吧。如果分类少的话还是很流畅的。

  • ORM 下如何实现同类别下同数量内容输出? at 3个月前

    首先你没有搞清楚预加载的原理,预加载首先会一次性查询出符合外键查询需求的所有数据,然后脱离mysql后进行配对的。你限制了总共查询3条数据等于总共查询出了3条,所以只能配对这3条数据。
    所以你的思路应该变更为如何让第一次一次性查询到的数据刚好服你的每条只要前3条的需求,筛选出这些ID,然后再用回调的query去获取对应的值就好;
    这里关系表只是举例,你更换表名即可;

    $list = Category::query()->whereIn('id', [1,2])
             ->with(['topics' => function($q) {
    
                    $topics = Topic::query()->whereIn('category_id',[1,2])
                        ->select('id','category_id')
                        ->get()
                        ->groupBy('category_id');
    
                    $col = collect();
    
                    foreach ($topics as $topic) {
                        $res = $topic->filter(function ($value, $key) {
                            return $key < 3;
                        });
                        $col = $col->merge($res);
                    }
    
                    $ids = $col->pluck('id')->toArray();
    
                    $q->find($ids);
                }])
                ->get();
  • onShareAppMessage 这个方法的回调为什么进不去? at 5个月前

    是呀,这个方法不就是点了转发按钮后触发嘛,我点了以后,那个222在控制台可以打出来,后面return里的3个回调控制台都没反应,也不报错。

  • 请问 attributes () 内容的含义是什么? at 5个月前

    @liyu001989 明白了,谢谢回答。第二本中貌似也没有讲这个哦,web的request文件里也没有用到这个用法,这里应该是教程第一次出现这个用法;自己测试了一下,效果如下,希望对后面的同学也有帮助

    file