2016-05-07 4 views
1

Я работаю над проектом, и мне нужна помощь в преобразовании списка массивов в строку.Преобразование массива в строку Laravel 5.2

Это мой контроллер:

public function editprofila($id) 
{ 
    $user = User::findOrFail($id); 
    $gradovi = Grad::all(); 

    $nazivGrada = DB::table('grad') 
     ->select('grad.naziv_grada') 
     ->join('users', 'grad.id', '=', 'users.id_grada') 
     ->where('grad.id', '=', Auth::user()->id_grada) 
     ->get(); 

    if ($user->id == Auth::user()->id || Auth::user()->legenda == 1) { 
     return view('korisnik.uredivanje_profila', 
      compact('user', 'gradovi', 'nazivGrada') 
     ); 
    } 
} 

Как выбрать одно значение из опций по nazivGrada таких как рус. имяCity?

<select class="form-control" name="id_grada" id="id_grada"> 

    @foreach($gradovi as $grad) 

    <option value="{{$grad->id}}" selected="">{{$grad->naziv_grada}}</option> 

    @endforeach 

    <option value="{{Auth::user()->id_grada}}" selected="selected">{{''.$nazivGrada.''}}</option> 

</select> 

Моя проблема заключается в том, что $nazivGrada является список массива, как это,

[{"naziv_grada":"Rovinj"}] 

и я получаю сообщение об ошибке; Массив для преобразования строк.

ответ

2

Что происходит, если вы

$nazivGrada = DB::table('grad') 
     ->select('grad.naziv_grada') 
     ->join('users', 'grad.id', '=', 'users.id_grada') 
     ->where('grad.id', '=', Auth::user()->id_grada) 
     ->first(); 

А потом в просмотре:

<option value="{{Auth::user()->id_grada}}" selected="selected">{{ $nazivGrada->naziv_grada }}</option> 
+0

, если все, что он может получает 1 результат, ваше решение является правильным. В противном случае он пропустит некоторые другие результаты. –

+0

Справа. В противном случае он сделал бы цикл, который понравится первому. Но, видя ответ, я не думаю, что это то, что он ищет. –

0

Вам не нужен дополнительный запрос для $ nazivGrada.

В шаблоне вы можете просто сделать:

@foreach($gradovi as $grad) 
    <option value="{{$grad->id}}" selected="{{ $grad->id == Auth::user()->id_grada ? 'selected' : '' }}">{{$grad->naziv_grada}}</option> 
@endforeach 

 Смежные вопросы

  • Нет связанных вопросов^_^