Laravel Eloquent 查询上的 SUBSTRING
Laravel SUBSTRING on Eloquent query
问题
如何限制 Eloquent 结果中的其中一行?
场景
我只需要从结果中的一个字段中检索大约 100 个字符。目前,我正在使用连接语句,因此 return 编辑了多个结果。我基本上只需要 post.content
的前 100 个字符
代码
public function getAll()
{
return Post::select('posts.id', 'posts.title', 'posts.content', 'posts.views', 'posts.comments', 'posts.tags', 'posts.date_created', 'users.image_url', 'users.username', 'users.toxick')
->join('users', 'posts.user_id', '=', 'users.id')
->get();
}
我不确定如何将查询过滤器设置为仅 return 100 个字符。我四处看了看,但没有发现任何有用的东西,至少对我的特定情况没有用。
目前无法对此进行测试(抱歉)但是怎么样:
public function getAll(){
$query = Post::select('posts.id', 'posts.title', 'posts.content','posts.views', 'posts.comments', 'posts.tags', 'posts.date_created', 'users.image_url', 'users.username', 'users.toxick')
->join('users', 'posts.user_id', '=', 'users.id')
->get();
foreach($query as $entries){
$entries->content = substr($entries->content, 1, 100);
}
return $query;
}
问题
如何限制 Eloquent 结果中的其中一行?
场景
我只需要从结果中的一个字段中检索大约 100 个字符。目前,我正在使用连接语句,因此 return 编辑了多个结果。我基本上只需要 post.content
代码
public function getAll()
{
return Post::select('posts.id', 'posts.title', 'posts.content', 'posts.views', 'posts.comments', 'posts.tags', 'posts.date_created', 'users.image_url', 'users.username', 'users.toxick')
->join('users', 'posts.user_id', '=', 'users.id')
->get();
}
我不确定如何将查询过滤器设置为仅 return 100 个字符。我四处看了看,但没有发现任何有用的东西,至少对我的特定情况没有用。
目前无法对此进行测试(抱歉)但是怎么样:
public function getAll(){
$query = Post::select('posts.id', 'posts.title', 'posts.content','posts.views', 'posts.comments', 'posts.tags', 'posts.date_created', 'users.image_url', 'users.username', 'users.toxick')
->join('users', 'posts.user_id', '=', 'users.id')
->get();
foreach($query as $entries){
$entries->content = substr($entries->content, 1, 100);
}
return $query;
}