Laravel是否仅对选定列使用分页?
我知道如何在laravel中使用paginate, 但是现在我想用paginate()来 仅使用选定列。 这是我的分页代码:Laravel是否仅对选定列使用分页?,laravel,pagination,Laravel,Pagination,我知道如何在laravel中使用paginate, 但是现在我想用paginate()来 仅使用选定列。 这是我的分页代码: $data['users']=DB::table('users')->paginate(2); 这就是我试图通过paginate获得的sql语句 select id,name,username,email,groupName,lastSignIn from users; 此select语句的my laravel代码: $data['users']=DB::sel
$data['users']=DB::table('users')->paginate(2);
这就是我试图通过paginate获得的sql语句
select id,name,username,email,groupName,lastSignIn from users;
此select语句的my laravel代码:
$data['users']=DB::select('select id,name,username,email,groupName,lastSignIn from users;')->paginate(4);
但它对我不起作用?这就是你需要的:
// Query\Builder
DB::table('users')
->select('id', 'name', 'username', 'email', 'groupName', 'lastSignIn')
->paginate(4);
这是:
DB::select(...);
是另一个类(
连接
)的完全不同的方法。您可以尝试以下代码片段:
$user = User::paginate(5,['id','name','username'.....]);
我可以在不使用
select()
的情况下使用它吗,比如>get(['id','name','username','email','groupName','lastSignIn'])
?@talesid您可以,除非您想要paginate()
@talesid 1我建议显式使用,这将为您和您的团队节省一些痛苦。2是的,您可以指定列,但不能同时使用get和paginate不适用于me Laravel 5.7。它适用于['*']或['id'],但不适用于倍数。严格模式关闭。我用的是maria db。这里的错误:SQLSTATE[42000]:语法错误或访问冲突:1064您的SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册,以了解在第1行中使用接近“name
”作为来自公司的聚合的正确语法(SQL:选择count(id
,name
)作为来自公司的聚合)您是否在数组中输入列的名称?这甚至适用于laravel 8,而且非常优雅。