Как вернуть определенное значение из базы данных в представлении из контроллера в Laravel?

Я пытаюсь вернуть определенное значение из базы данных в View(activate_id) из AdminController, но ничего не возвращает.

web.php

Route::get('/activate-id', 'AdminController@activateId')->middleware('role:admin');

AdminController.php

public function activateId(Request $request)
{
    $by = DB::table('users')
        ->select('referrer')
        ->where('username', $request->username)
        ->first();

    return view('activate_id')->with('by', $by);
}

activate_id.blade.php

<form method="post" action="/activate-user">
    @csrf
    <div class="input-group mb-3">
        <div class="form-group">
            <input id="fuser" type="text" class="form-control" name="username" placeholder="Username">
            <p class="text-info" id="fdetails"></p>
        </div>
    </div>
    <div class="input-group mb-3">
        <div class="form-group">
            <label for="recipient-name" class="control-label">Referrer</label>
            <input type="text" class="form-control" name="by" id="recipient-name" value="{{$by}}" readonly>
        </div>
    </div>
    <div class="col-12">
        <button class="btn btn-outline-success"> Activate</button>
    </div>
</form>

введите здесь описание изображения


person Vinayak Sahu    schedule 03.05.2020    source источник
comment
Показывает ли dd($by); ожидаемый результат в вашем контроллере перед возвратом представления? Возможно, вам придется сделать {{ $by->referrer }} в файле блейда.   -  person DigitalDrifter    schedule 03.05.2020
comment
После {{ $by-›referrer }} добавления этого он возвращает аргументы, пытающиеся получить свойство «referrer» не-объекта (представление: C:\xampp\htdocs\mlm-solution-master\resources\views\activate_id.blade. php)   -  person Vinayak Sahu    schedule 03.05.2020


Ответы (1)


Результатом, который выходит из базы данных, является объект, который в вашем случае является переменной $by, поэтому вам нужно извлечь из него значение referrer.

Итак, чтобы решить проблему, попробуйте следующее:

 {{$by->referrer}}

Я надеюсь, что это помогает

person Hardood    schedule 03.05.2020
comment
Аргументы Попытка получить свойство 'referrer' не-объекта (Вид: C:\xampp\htdocs\mlm-solution-master\resources\views\activate_id.blade.php) - person Vinayak Sahu; 03.05.2020
comment
Не могли бы вы var_dump значение $by в контроллере перед отправкой в ​​представление. - person Hardood; 03.05.2020
comment
Он возвращает NULL общедоступную функцию. ); var_dump ($ по); умереть(); return view('activate_id')-›with('by', $by); } - person Vinayak Sahu; 03.05.2020
comment
Тогда проблема в вашем запросе, попробуйте исправить, возможной причиной является значение имени пользователя, которое приходит из запроса. - person Hardood; 03.05.2020
comment
спасибо, вы правы @Hardood, это была моя глупая ошибка... - person Vinayak Sahu; 03.05.2020