Php 缺少[Route:ticket.edit][URI:ticket\u ads/edit/{ad}]所需的参数
我正在尝试编辑表中的记录。我已经创建了一个路由和表单,但无法通过此错误。我已经解决了这个问题,但找不到解决办法。我认为Php 缺少[Route:ticket.edit][URI:ticket\u ads/edit/{ad}]所需的参数,php,laravel,Php,Laravel,我正在尝试编辑表中的记录。我已经创建了一个路由和表单,但无法通过此错误。我已经解决了这个问题,但找不到解决办法。我认为edit.blade.php文件需要传递$ad->id是正确的吗 $ad->id是列表视图中特定外接程序的id。列表视图显示了表中的所有票据,下面的链接用于编辑该项目 使用以下代码访问编辑路由: <a href="{{ route('ticket.edit', $ad->id) }}">Edit</a> 上述路线指向控制器中的此点: publi
edit.blade.php
文件需要传递$ad->id
是正确的吗
$ad->id
是列表视图中特定外接程序的id。列表视图显示了表中的所有票据,下面的链接用于编辑该项目
使用以下代码访问编辑路由:
<a href="{{ route('ticket.edit', $ad->id) }}">Edit</a>
上述路线指向控制器中的此点:
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
例如,ID通常在URL中显示为ticket\u ads/edit/7
我怎样才能通过这一关?更改这一行:
{{ Form::open(array('route' => 'ticket.edit', $id = 'id')) }}
为此:
{{Form::open(array('route' => array('ticket.edit', $id)))}}
这个
这是错误的。正确的语法是:
{{ Form::open(['route' => ['ticket.edit', $id]]) }}
另外,您应该安全地放弃使用
array()
,转而使用[]
语法,因为Laravel无论如何都需要PHP5.4+(除非您使用的是Laravel的古老版本,如v4?调用route的正确语法是
{{ route('/cardetails', ['121','cars'] ) }}
在URL中,它将如下所示
127.0.0.1:8000/cardetails/121/cars
您已将路由定义为GET
route::GET()
。而在中,我将其更改为
,具有相同的路径,并且发生相同的错误,因此我怀疑是否存在这种情况。需要更清楚。请分享更多代码。您共享这一行{{Form::open(array('route'=>'ticket.edit',$id))},也是这一行,不清楚是哪一行造成了问题。删除不相关的代码,并尝试扩展更多可能更令人关注的代码。我不确定还可以共享什么。你想让我分享什么?我在视图部分添加了更多代码。我也添加了更多的解释。它仍然会给出错误。我在拉威尔5.2.45频道。将进行更新,但这不会投入生产。就是这样。非常感谢。
{{ Form::open(['route' => ['ticket.edit', $id]]) }}
{{ route('/cardetails', ['121','cars'] ) }}
127.0.0.1:8000/cardetails/121/cars