Как извлечь данные из базы данных во входные значения формы в Laravel PHP для завершения действия обновления? - PullRequest
0 голосов
/ 11 июля 2019

Я пытаюсь заполнить данные во входные значения из базы данных MySQL, чтобы я мог видеть и изменять данные.

У меня есть форма с именем form.blade.php , которая будет включена в оба create.blade.php и edit.blade.php .Что мне нужно, это знать, как извлечь данные из базы данных, чтобы заполнить данные для этих входов, когда я нажимаю на редактировать. Затем, когда я нажимаю на Добавить кнопку в index.blade.php , я буду перенаправлен на create.blade.php , и тогда входные данные должны быть пустыми.

Iпопытался добавить некоторые функции кода к каждому входному значению

{{old('title',$page->title}}  then {{ isset($page) ? page->title: ''}}

, но он не работает

Я использую одну форму для выполнения действий по созданию и обновлению

Этоedit.blade.php

@extends('layouts.master')
@section('content')

    <div class="card">
        <div class="card-header card-header-success">
            <h4 class="card-title ">Pages Data Table</h4>
            <p class="card-category"> Here you can update Page data</p>
        </div>
        <div class="card-body">

            {!! Form::open(['action' => 'PagesController@store', 'method' => 'POST' ]) !!}
                @csrf
                @method('PUT')
                @include('pages.includes.form')
            {!! Form::close() !!}
    </div>
    </div>


@endsection

и это дочерняя форма form.blade.php

    <div class="form-group">
        {{Form::label('title', 'Title')}}

  {{ Form::text('title', '',['class' => 'form-control', 'placeholder' => 'Title']) }}

    </div>
    <div class="form-group">
        {{Form::label('content', 'Content')}}
        <br>
        {{ Form::textarea('content', '',['class' =>'form-control', 'placeholder'=> 'Content']) }}
    </div>
    <div class="form-group">
            <div class="form-check form-check-radio">
                    <label class="form-check-label">
                            {{Form::input('radio','status', '0',['class' => 'form-check-input','checked'=>'checked'])}} Status Off
                        <span class="circle">
                            <span class="check"></span>
                        </span>
                    </label>
                </div>
                <div class="form-check form-check-radio">
                    <label class="form-check-label">
                            {{Form::input('radio','status', '1',['class' => 'form-check-input'])}} Status On
                        <span class="circle">
                            <span class="check"></span>
                        </span>
                    </label>
                </div>

    </div>

    <input type="submit" name="submit" class="btn btn-success" value="Save">

1 Ответ

0 голосов
/ 11 июля 2019

Когда вы используете одну и ту же форму для создания и обновления, вы можете использовать необязательный метод .

<input type="text" class="form-control{{ $errors->has('date') ? ' is-invalid' : '' }}" name="date" id="date" value="{{ old('date', optional($expense)->date) }}">

В функции создания отправьте переменную как ноль, например $expense = null;А в функции редактирования переменная имеет свое значение из базы данных.Поэтому, когда переменная имеет свое значение, поле ввода будет заполнено значением из базы данных, в противном случае оно будет пустым.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...