Как назначить взорванное значение из БД в представление шаблона лезвия Laravel? - PullRequest
0 голосов
/ 25 сентября 2019

Я уже установил все свои флажки в 1 значение из spoken_language[], включая 1 значение текстового поля.

html

<div>
    {{ Form::checkbox('spoken_language[]', "English", array('class' => 'form-check-input')) }}
    <label>English</label>
</div>
<div>
    {{ Form::checkbox('spoken_language[]', "Bahasa Melayu", array('class' => 'form-check-input')) }}
    <label>Bahasa Melayu</label>
</div>
<div>
    {{ Form::checkbox('spoken_language[]', null, array('class' => 'form-check-input')) }}
    <label>Others</label>
    {{ Form::text('spoken_language[]', null, array('class' => 'form-control')) }}
</div>

php

$request->merge(['spoken_language' => implode(',', (array) $request->get('spoken_language'))]);

Проблема заключается в том, как связать данные в виде шаблона блейда (флажок и текстовое поле) на основе 1 значения?

Моя коллекция

$user = DB::table('users')
    ->where("users.id", Auth::user()->id)
    ->first();

    return View::make('user.profile')->with('user', $user);

Как и в этом примере, я получил эти значения English,Bahasa Melayu,Urdu, затем мне нужно назначить для каждого флажка и урду в текстовом поле.Но если English,Bahasa Melayu, просто установите флажок.То же самое относится к Urdu, идет к текстовому полю.

1 Ответ

1 голос
/ 25 сентября 2019

Скажите, $storedSpokenLang имеет значения, полученные в базе данных.

Вы можете создать коллекцию сохраненных языков пользователя и передать ее в шаблон представления блейда.

$spokenLang = collect(explode(',', $storedSpokenLang))->flip();

Впросмотр, вы можете начать отсюда:

<div>
    {{ Form::checkbox(
           'spoken_language[]', 
           "English", 
           $spokenLang->has('English'), 
           array('class' => 'form-check-input')) }}
    <label>English</label>
</div>
<div>
    {{ Form::checkbox(
           'spoken_language[]',
           "Bahasa Melayu", 
           $spokenLang->has('Bahasa Melayu'),
           array('class' => 'form-check-input')) }}
    <label>Bahasa Melayu</label>
</div>
<div>
    {{ Form::checkbox(
           'spoken_language[]', 
           $spokenLang->except("English", "Bahasa Melayu", "")->isNotEmpty(),
           array('class' => 'form-check-input')) }}
    <label>Others</label>
    {{ Form::text(
           'spoken_language[]', 
           $spokenLang->except("English", "Bahasa Melayu", "")->keys()->implode(','),
           array('class' => 'form-control')) }}
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...