laravel - Livewire Select2 与 take()
问题描述
我有一个 select2 组件,数据由数据库中包含数千个数据的表呈现。我能够在没有 livewire 的情况下以传统方式使用 ajax 配置此设置,但我想使用 livewire 来完成。
// 这是我的查询
$labels = Subject::select('id', 'label')
->where('label', 'LIKE', '%'.$this->subjects.'%')
->where('disableSubject','=', 0)
->orderBy('id')
->take(10)
->get();
return view('livewire.select2-subjects',[
'labels' => $labels,
]);
当组件被渲染和搜索时,只显示和搜索前 10 个结果,但我想搜索模型中的每个值并且每次只显示 10 个结果。
如果我注释掉 take(10),这种情况效果很好,但加载所有值需要时间,并且在 select2 下拉菜单中,值溢出,因为有超过 10k 条记录。
克服这个问题的最佳方法是什么?
解决方案
推荐阅读
- c# - 用户只能在管理员批准后注册
- java - 使用 docker 和 logback 记录到文件
- javascript - 如何从同一类中的另一个方法检索最后插入的 id?
- python-3.x - 在 Python 中将对象传递给 yield 语句
- javascript - 为什么此绑定不适用于 javascript 中的类
- python - 在 Mac 上是否有一种方便的方法可以将 .py 文件打包为 Windows 系统的可执行文件?
- java - Kongchen/swagger-maven-plugin 枚举生成
- android - 在 android studio 中找不到导航抽屉布局
- visual-studio - 在将部件/任务从工具栏拖到 Visual Studio 设计图面时,我可以在哪里修改默认 ID/名称?
- laravel - 使用txt文件而不是数据库来获取当前计数器值更好吗?