簡體   English   中英

該集合實例上不存在屬性[TitleEn]

[英]Property [TitleEn] does not exist on this collection instance

我出於某種原因嘗試了所有操作,即使我選擇了一個具有該ID的東西,也一直收到此錯誤,並且當我在控制器上dd將其正確時,但在視圖中給出了錯誤信息

     $affilliate = Affiliate::find($id);
    if (App::getLocale() == 'ar') {
        $affilliate->TitleEn = $affilliate->TitleAr;
        $affilliate->DescriptionEn = $affilliate->DescriptionAr;
        $affilliate->ContentEn = $affilliate->ContentAr;
    }
    if (App::getLocale() == 'ur') {
        $affilliate->TitleEn = $affilliate->TitleUr;
        $affilliate->DescriptionEn = $affilliate->DescriptionUr;
        $affilliate->ContentEn = $affilliate->ContentUr;

    }
    if (App::getLocale() == 'ch') {

        $affilliate->TitleEn = $affilliate->TitleCh;
        $affilliate->DescriptionEn = $affilliate->DescriptionCh;
        $affilliate->ContentEn = $affilliate->ContentCh;

    }




    return view('affilliates.affilliate-details')
        ->with('Affiliates', $affilliate);

這是我的看法

<div class="row">
<div class="col-xs-12">
<h3 class="orange-heading">{{$Affiliates->TitleEn}}</h3>
<hr class="orange-hr pull-left">
</div>
<div class="col-xs-12 lead">
<p>{!! $Affiliates->ContentEn !!} </p>
</div>
</div>

這樣的事情對您有用嗎? 通過獲取App::getLocale()並將第一個字母設置為大寫(多一點DRY)來映射集合,以確保我們始終擁有TitleEnDescriptionEnContentEn

$affilliate = Affiliate::where($id);
$affiliateMapped = $affiliate->map(function($affiliate) {
    $locale = ucfirst(App::getLocale());
    $affiliate['TitleEn'] = $affiliate["Title{$locale}"];
    $affiliate['DescriptionEn'] = $affiliate["Description{$locale}"];
    $affiliate['ContentEn'] = $affiliate["Content{$locale}"];
    return $affiliate;
});

return view('affilliates.affilliate-details')
    ->with('Affiliates', $affiliateMapped);

如果您提供$affiliatedd()並確認錯誤是否來自視圖或控制器(尤其是哪一行dd() ,我可以更新我的答案。

更新 :當您with('Affiliates', $affilliate) with('Affiliates', $affiliate)書寫時,您會遇到一個拼寫錯誤with('Affiliates', $affilliate)它應該是一個l字符而不是兩個字符,因此將其更改為with('Affiliates', $affiliate) 如果您是我,我會考慮進行重構,因此我將保留原來的答案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM