【发布时间】:2018-01-21 13:36:31
【问题描述】:
我正在尝试编辑表格中的记录。我已经创建了一条路线和表格,但我无法克服这个错误。我已经找到了问题,但我找不到解决方法。我认为edit.blade.php 文件需要$ad->id 传递是否正确?
$ad->id 是列表视图中特定添加的 ID。列表视图显示了表格中的所有票证,下面的链接旨在编辑该项目。
使用以下代码访问编辑路由:
<a href="{{ route('ticket.edit', $ad->id) }}">Edit</a>
我有一个应该打开编辑视图表单的路线:
Route::get('/ticket_ads/edit/{ad}', 'TicketAdsController@editTicketAdForm')->name('ticket.edit');
上面的路由在控制器中指向这个:
public function editTicketAdForm($id)
{
//$ad = DB::table('ticket_ads')->where('id', $id)->value('id');
return view('Ads.edit')->with('id', $id);
}
这是上面函数调用的视图:
@extends('Shared.Layouts.MasterWithoutMenus')
@section('title')
Edit a ticket ad
@stop
@section('content')
<div class="container">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading"><h2>Edit your ticket ad</h2></div> <br/>
@if ($errors->any())
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
{{ Form::open(array('route' => 'ticket.edit', $id = 'id')) }}
<div class="form-group">
{{ Form::label('title', 'Title') }}
{{ Form::text('title', Input::old('title'), array('class' => 'form-control')) }}
</div>
<div class="form-group">
{{ Form::label('comment', 'Comment') }}
{{ Form::text('comment', Input::old('comment'), array('class' => 'form-control')) }}
</div>
{{ Form::submit('Submit', array('class' => 'btn btn-primary')) }}
{{ Form::close() }}
</div>
</div>
</div>
</div>
@endsection
这是引发错误的行
{{ Form::open(array('route' => 'ticket.edit', $id = 'id')) }}
例如,ID 在 URL 中通常显示为 ticket_ads/edit/7。
我该如何克服这个问题?
【问题讨论】:
-
您已将路由定义为 GET
Route::get()。在<form action中,它似乎是 POST 请求。这是正确的吗。尝试分享与 GET 请求相关的内容。 -
我把它改成
<a href="...">,路由一样,出现同样的错误,所以我怀疑是不是这样。 -
需要更清楚。请分享更多代码。您分享这一行 {{ Form::open(array('route' => 'ticket.edit', $id)) }},还有这一行
-
我不确定还有什么要分享的。你想让我分享什么?我在视图部分添加了更多代码。我也添加了更多解释。