laravel jenssegers/laravel-mongodb slice 操作怎么写

laravel jenssegers/laravel-mongodb slice 操作怎么写

写了一个 comments字段 是 数组形式 里面的数据都是push进去的 现在有需求 需要分页取
或者取列表的时候 只去 comments里的3条数据 应该怎么写
试了很多方法都写不出来 求大牛 解答

Collection::where("field", "value")->slice("arrayField", 3)->get();

这种方式会直接报 slice方法不存在

参考

$query = array(array('_id' => $id), array(
'_comments' => array(
'$slice' => [0, 3]
)));

$post = Post::whereRaw($query)->get();

这种写法 也查不出来 数据直接为空.
已邀请:

安正超

赞同来自: FiveSay 宋小北

Everything else works just like the original Eloquent model.

与Eloquent用法一样哇:
$users = User::where('votes', '>', 100)->take(10)->get(); // LIMIT 10
$users = User::where('votes', '>', 100)->skip(5)->take(10)->get(); // LIMIT 5, 10

JohnLui

赞同来自: FiveSay

我没有用过这个包,但是我用过一点 MongoDB。

MongoDB 作为 NoSQL 数据库,是没有 MySQL 这样严谨的表间关系和行间关系的。一个 collection 相当于一张表,但是表里面的每一行的数据都是独立的没有顺序的。如果想获取最近的3篇,可以按照 time 获取,如果还需要按照其他的排序貌似就得遍历了。当然遍历也不用担心,可以通过狂堆硬件,狂加索引解决。

之前我做过的项目,用户表这种严格自增的地方是用 MySQL 解决的 %>_<%

FiveSay - 成武

赞同来自:

没有使用过这个包,帮你呼叫一些高手。
@安正超 @宋小北 @00幽靈00 @JohnLui @cooper @王赛

do_while

赞同来自:

这个怎么配置能和我具体说下么?

要回复问题请先登录注册