Почему моя страница редактирования не работает в Laravel? Я использовал vue. js - PullRequest
1 голос
/ 02 марта 2020

В основном, я делаю панель для просмотра деталей. Если пользователь хочет редактировать свои данные. Они должны нажать кнопку редактирования, чтобы отредактировать его. Если я нажимаю кнопку редактирования, он ничего не отвечает. Теперь редактирование не сработало. Я не мог найти проблему. Я прилагаю свои коды здесь. enter image description here

index.blade. php

@extends('layouts.main')

@section('content')
    <div class="justpaddingside" role="main" >
        <div class="row w-100 Bfont">
            <div class="col-xs-12">
                <div class="havence-content">
                    <div class="havence-content-body">
                        <div class="dashboardbg">
                            <div class="x_title" >
                                <img src="https://img.icons8.com/bubbles/50/000000/important-mail.png" class="rounded float-left" >  
                                <h2 class="p-3 font-weight-bold">Email Reminder Dashboard</h2> 
                                <h4 class="text-right">{{date('d-m-Y')}}</h4>
                                <h5 class="text-right">{{date('H:i:s')}}</h5>
                            </div>
                            <div class="col-md-12 text-right"> 
                                <a href="mail" class="btn btn-danger badge-pill"  > Create New Template </a>
                            </div>
                        </div>
                        <div class="contentbg p-5">
                            <div class="row w-100">
                                <div class="havence-content-datatable table-responsive">
                                <table class="table table-hover table-info"  cellpadding="0" cellspacing="0" border="0">
                                    <thead class="">
                                        <tr>
                                            <th scope="col">ID</th>
                                            <th scope="col">Subject</th>
                                            <th scope="col">Message</th>
                                            <th scope="col">Condition</th>
                                            <th scope="col">Module Name</th>
                                        </tr>
                                    </thead>
                                    <tbody>
                                        @foreach ($mailTemplates as $mailTemplate)
                                        <tr>
                                            <th>{{$mailTemplate->id}}</th>
                                            <th>{{$mailTemplate->subject}} </th>
                                            <th>{{$mailTemplate->message}} </th>
                                            <th>{{$mailTemplate->condition_id}} </th>
                                            <th>{{$mailTemplate->mod_name}}</th>

                                            <td class="text-right">
                                                <a href='edit/{id}' class="btn btn-danger badge-pill" style="width:80px" >EDIT </a>
                                                <form action="{{ route('havence.automail.delete', $mailTemplate) }}" method="POST">
                                                    @csrf
                                                    @method('DELETE')
                                                    <button type="submit" class="btn btn-danger">Delete</button>
                                                </form>
                                            </td>

                                        </tr>
                                        @endforeach
                                    </tbody>
                                </table>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>

    {!! Form::open(['method'=>'post', 'id'=> 'delete-frm']) !!}
    @method('DELETE')
    @csrf
    {!! Form::close() !!}


</div>


@endsection

@push('stylesheets')
    <link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/v/dt/dt-1.10.16/datatables.min.css"/>
    <link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.5/css/select2.min.css">
@endpush

@push('scripts')
    <script type="text/javascript" src="https://cdn.datatables.net/v/dt/dt-1.10.16/datatables.min.js"></script>
    <script src="https://unpkg.com/sweetalert2@7.19.3/dist/sweetalert2.all.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.5/js/select2.min.js"></script>
@endpush

@section('page-js')
    <script>


    </script>
@endsection

AutoMailController. php

 public function edit($id)
    {
        $mailTemplates=AutoEmailTemplate::find($id);
        return view('havence.automail.edit')->with('mailTemplates', $mailTemplates);
    }

web. php

Route::get('api/email/create', ['as' => 'email.create', 'uses' => 'Havence\AutoMailController@create']);
    Route::get('automail/mail', 'Havence\AutoMailController@mail');
    Route::get('automail/index',['as'=>'email.index','uses' => 'Havence\AutoMailController@index']);
    Route::get('automail/edit/{id}',['as'=>'email.edit','uses' => 'Havence\AutoMailController@edit']);
    Route::get('automail/delete',['as'=>'email.delete','uses' => 'Havence\AutoMailController@destroy']);

Ответы [ 3 ]

0 голосов
/ 02 марта 2020

как насчет замены:

<a href='edit/{id}' class="btn btn-danger badge-pill" style="width:80px" >EDIT </a>

на:

<a href={{'edit/'.$mailTemplate->id}} class="btn btn-danger badge-pill" style="width:80px" >EDIT </a>
0 голосов
/ 02 марта 2020

Попробуйте использовать:

<a href='{{ route("email.edit",["id"=>$mailTemplate->id]) }}' class="btn btn-danger badge-pill" style="width:80px" >EDIT </a>
0 голосов
/ 02 марта 2020

Вы не передаете идентификатор от своего href и пользователя. laravel Строковая интерполяция '{{$ variable}}'.

<a href='edit/{{$mailTemplate->id}}' class="btn btn-danger badge-pill" style="width:80px" >EDIT </a>

также, если вы хотите открыть маршрут в другой вкладке, добавьте target = "_ blank" в вашем теге 'a'.

<a href='edit/{{$mailTemplate->id}}' target='_blank' class="btn btn-danger badge-pill" style="width:80px" >EDIT </a>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...