我收到此錯誤Undefined property: Illuminate\View\Engines\CompilerEngine::${"id":1,"title":"abddad","description":"abddad.","created_at":"2019-06-27 22:25:18","updated_at":"2019-06-27 22:25:18"} (View: /home/vagrant/projectos/projectofinal/ProjectoFinal/resources/views/index.blade.php)代碼如下:@foreach (\App\Award::all()->take(3) as $award) <div class="row"> <div class="col-lg-12"> <ul class="timeline"> @if (count($this->$award) === 2) <li> <div class="timeline-image"> <img class="rounded-circle img-fluid" src="img/awards/medal.png"> </div> @else <li class="timeline-inverted"> <div class="timeline-image"> <img class="rounded-circle img-fluid" src="img/awards/medal.png"> </div> @endif <div class="timeline-panel"> <div class="timeline-heading"> <h4 class="subheading">{{ $award->title }}</h4> </div> <div class="timeline-body"> <p class="text-muted">{{ $award->description }}</p> </div> </div> </li> </ul> </div> </div> @endforeach如果我使用 $award 而不是 $this->award我有錯誤:count(): Parameter must be an array or an object that implements Countable (View: /home/vagrant/projectos/projectofinal/ProjectoFinal/resources/views/index.blade.php)在第 5 行獲取錯誤異?!癅if (count($this->$award) === 2)”我應該怎么做?希望這有助于 dd($award): Award {#692 ▼ #fillable: array:2 [?] #connection: "mysql" #table: "awards" #primaryKey: "id" #keyType: "int" +incrementing: true #with: [] #withCount: [] #perPage: 15 +exists: true +wasRecentlyCreated: false #attributes: array:5 [?] #original: array:5 [?] #changes: [] #casts: [] #dates: [] #dateFormat: null #appends: [] #dispatchesEvents: [] #observables: [] #relations: [] #touches: [] +timestamps: true #hidden: [] #visible: [] #guarded: array:1 [?]}
2 回答

白板的微信
TA貢獻1883條經驗 獲得超3個贊
以下代碼通過變量 $award ($this->$award) 的值調用 $this 的屬性意味著如果 $award 確實包含 $this 的字符串匹配屬性,您應該獲取該屬性的值。
相反, $award 包含一些看起來像字符串化的 json 對象的東西
{"id":1,"title":"abddad","description":"abddad.","created_at":"2019-06-27 22:25:18","updated_at":"2019-06-27 22:25:18"}
然而 $this 不包含這樣的變量。
嘗試在第 5 行執行以下代碼,應該可以
@if (count($award) === 2)
- 2 回答
- 0 關注
- 197 瀏覽
添加回答
舉報
0/150
提交
取消