2015-04-28 25 views
0

我使用數據庫中的值檢查單選按鈕,它工作正常,但它已在選中的單選按鈕之前呈現「1」。如果我刪除語句,那麼它不會顯示。爲什麼在選中單選按鈕之前查看呈現「1」

<?php $formUserType = UserType::all(); ?> 

@foreach($formUserType as $valUT) 
    {{ $varSetRadio = false }} 

    @if($user->profile->dic_user_type_id == $valUT->id) 
    {{ $varSetRadio = true }} 
    @endif 

    {!! Form::radio('profile[dic_user_type_id]', $valUT->id, $varSetRadio) !!} {{ $valUT->name }} 
    <br /> 
@endforeach 

回答

1

{{ expr }}轉換爲<?php echo e(expr) ?>

分配的輸出是在PHP最右邊的值,所以($var = 1)等於1(也true等於1,因爲PHP是truthy)

執行以下操作:

@foreach($formUserType as $value) 
    {!! Form::radio('profile[dic_user_type_id]', $value->id, $user->profile->dic_user_type_id === $value->id) !!} 
    {{ $value->name }} 
    <br /> 
@endforeach 

在另外,你不應該在視圖中比較簡單的邏輯。

嘗試將dic_user_type的比較結果添加到User模型本身,並傳遞數據,而不是在控制器/模型之外進行讀取。

相關問題