如何在Laravel 5.1中编写此查询:
SELECT p.id, p.title, p.created_at, p.updated_at, u.name, COALESCE(c.comments_count, 0) AS comments_count, COALESCE(pl.status_sum, 0) AS status_sum
FROM posts p
LEFT OUTER JOIN users u ON u.id = p.user_id
LEFT OUTER JOIN (
SELECT pl.post_id, SUM(pl.status) AS status_sum
FROM postslikes pl
GROUP BY pl.post_id
) pl ON pl.post_id = p.id
LEFT OUTER JOIN (
SELECT c.post_id, COUNT(*) as comments_count
FROM comments c
GROUP BY c.post_id
) c ON c.post_id = p.id ORDER BY comments_count DESC
Run Code Online (Sandbox Code Playgroud)
我需要它用于分页.我可以毫无问题地执行此查询原始但手动分页器始终给出相同的结果:http: //laravel.com/docs/5.1/pagination#manually-creating-a-paginator 与此处相同的问题:http:// …
“您还可以使用 App 外观上的 setLocale 方法在运行时更改活动语言:” https://laravel.com/docs/5.3/localization#introduction
Route::get('welcome/{locale}', function ($locale) {
App::setLocale($locale);
//
});
Run Code Online (Sandbox Code Playgroud)
如果我们有这样的东西,我们如何用 $locale 做到这一点:
Route::group(['prefix' => 'admin/{id}/{locale}', 'namespace' => 'Admin'], function( $locale ) {
// this does not work.
App::setLocale( $locale );
// this does work.
App::setLocale( Request::segment( 3 ) );
Route::resource('product', 'ProductController', ['except' => [
'show'
]]);
});
Run Code Online (Sandbox Code Playgroud)