Laravel是否仅对选定列使用分页?

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

我知道如何在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::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,而且非常优雅。