の場合:ところで関係がある
Undefined property: Illuminate\Database\Eloquent\Builder::$stats
統計:>最初の()しかし、私は、このエラーを与える以外には何もしません -
私は削除しようとしていますこの表から1つの列だけが必要な場合は、select
関数を使用して、必要なものを示すことができます。そのよう
:
<?php
$higherGovernment = Cache::remember('government.higher_government', 1, function() {
return GovernmentRole::where('government_type', 'higher_government')->select('stats')->get();
});
コレクション$higherGovernment
は今つのパラメータ、stats
とGovernmentRole
オブジェクトが含まれます。
これをstatsプロパティのみの配列にしたい場合は、コレクションをpluck
の値で使用できます。そのような:
<?php
$higherGovernment = Cache::remember('government.higher_government', 1, function() {
return GovernmentRole::where('government_type', 'higher_government')->select('stats')->get()->pluck('stats');
});
更新:今、私たちは統計は、私は最善の解決策は、ちょうどすべてのGovernmentRole
オブジェクトとeager load関係をロードすることだと思う関係であることを知っていることを
。その後、GovernmentRole
ごとに統計情報を表示することができます。あなたはこのようにそれを行うことができます
:あなたは何ができるか
<?php
$higherGovernment = Cache::remember('government.higher_government', 1, function() {
return GovernmentRole::where('government_type', 'higher_government')->with('stats')->get();
});
// Just an example on how to get the stats
foreach ($g in $higherGovernment)
echo $g->stats->count();
未定義のメソッドを呼び出す\データベース\クエリ\ビルダー::すべて()?? – Ashkru
これは、first()を削除したときと同じエラーが発生します。 – Ashkru
未定義のプロパティ:Illuminate \ Database \ Eloquent \ Collection :: $ stats – Ashkru