将format()与返回Query构建器对象一起使用

时间:2013-06-26 19:48:02

标签: php laravel-4 query-builder

我的请求SQL是用查询生成器构建的

    $candidates = DB::table('candidates')
            ->select('candidates.*')
            ->distinct()
            ->join('candidate_region', 'candidates.id', '=', 'candidate_region.candidate_id')
            ->join('candidate_job', 'candidates.id', '=', 'candidate_job.candidate_id')
            ->whereIn('candidate_region.region_id', $inputs['region'])
            ->whereIn('candidate_job.job_id', $inputs['job'])
            ->where('imavailable', '1')
            ->where('dateDisponible', '<=', $inputs['availableDate'])
            // fait appel à nbSkip() pour calculer le nombre de candidat à passer
            ->skip(Search::nbSkip($_GET['page']))
            // une fois passé le nombre, on prends les 15 suivants
            ->take(15)
            ->get();

    foreach ($paginator as &$candidate) {

        // récupère la liste des jobs
        $candidate->jobs = DB::table('jobs')
                ->join('candidate_job', 'jobs.id', '=', 'candidate_job.job_id')
                ->where('candidate_id', $candidate->id)
                ->get();

        // récupère la liste des régions
        $candidate->regions = DB::table('regions')
                    ->join('candidate_region', 'regions.id', '=', 'candidate_region.region_id')
                    ->where('candidate_id', $candidate->id)
                    ->get();
    }

    // return la liste des candidats
    return $paginator;

我想在视图candidate.blade.php中使用 - &gt;格式

dateDisponible = public'dateDisponible'=&gt; string'2011-11-15 00:00:00'(length = 19)

<div>
    @foreach($candidates as $candidate)
        <p>
            Disponible à partir du/depuis : {{ $candidate->dateDisponible->format('d-m-Y') }}
        </p>
    @endforeach
</div>

但是我返回错误:在非对象上调用成员函数format()

2 个答案:

答案 0 :(得分:1)

我不知道API中的任何format方法。您可以改为使用date(),例如

{{ date("d-m-Y", strtotime($candidate->dateDisponible)) }}

或使用PHP的DateTime

答案 1 :(得分:0)

format()方法来自Carbon类,默认情况下在eloquent查询中实现。但是,我不确定是否可以将它与Query Builder一起使用。