2017-06-17 6 views
0

unix datetime値の出現回数を含むデータ変数を作成したいとします。laravel:オブジェクトをd3.cal-heatmapに渡す

すなわち

{1489140000.0: 2, 1487239200.0: 1, 1483524000.0: 2, 1486634400.0: 1, 1490086800.0: 3 } 

私のエラーは、ビュー上で、私はstats.blade.php

.... 
var cal = new CalHeatMap(); 
cal.init({ 
    itemSelector: "#example-d", 
    domain: "month", 
    itemName: ["job", "jobs"], 
    data: {!! datas !!}, 
    start: thisMonth.SubtractMonth(5), 
    cellSize: 12, 
    cellPadding: 5, 
    .... 

にjavascriptの一部のlaravel use of undefined constant datas - assumed 'datas'

public function showStatistics() 
{ 
    $job_post_date = Emploi::where('language', 'EN')->pluck('POSTDATE'); 
    $unix_time = array(); 

    for ($i=0; $i < count($job_post_date) ; $i++) { 
     $unix_time[$i] = strtotime($job_post_date[$i]); 
    } 

    $datas = array_count_values($unix_time); 
    $datas = json_encode($datas); 

    return view('emploi.stats', ['datas' => $datas]); 
} 

抜粋を得ているということですテンプレートのエラー:{{datas}}

答えて

1

使用

data: {!! $datas !!} 

代わり

data: {!! datas !!} 

のあなたは、PHPはそれは(あなたが宣言していない)定数だと仮定しますドル記号を、逃しました。

+0

ありがとう@lessugar!あなたはそれを{!! $ datas !!}代わりに、それは適切なjavascriptオブジェクトです。 {"1497571200":3、 "1497484800":5、...}、それ以外の場合は引用符をエスケープします –

+0

あなたの投稿も終えました。 – lesssugar

関連する問題