表单数据正在发送,但已在控制器Laravel 5.8上进行了处理

穆哈迪迪斯

我正在尝试更新工单(SET Deleted = TRUE因为我还必须显示已删除的工单)。为此,我POST在表单上使用带有票证ID的方法,但是在表单提交时,该票证ID更改为最新的票证ID。

当我检查时,我在操作中看到了确切的票证ID,但是在提交时,它得到了更改。

我也尝试传递给它一个隐藏的输入,但不幸的是,它也获得了最新票证的更改。

<tbody>
@foreach ($Tickets as $Ticket)
    <tr>
        <td>{{$loop->iteration}}</td>
        <td>{{$Ticket->Customer->Name}}</td>
        <td>$ {{$Ticket->Paid}}</td>
        <td>$ {{$Ticket->TDisc}}</td>
        <td>{{$Ticket->Tax}}</td>
        <td>{{ date("d M Y", strtotime($Ticket->Date))}}</td>
        <td class="text-right">
            <a href="/Ticket/{{$Ticket->ID}}">EDIT</a>
            <a href="" onclick="event.preventDefault(); document.getElementById('Delete').submit();">DELETE</a>
            <form id="Delete" action="Ticket/{{$Ticket->ID}}" method="POST" style="display: one;">
                <input type="hidden" name="ID" value="{{{{$Ticket->ID}}}}"
                @csrf
            </form>
        </td>
    </tr>
@endforeach
</tbody>

控制者

public function destroy(Request $request, $id) {
    dd($id);
    Ticket::where('ID', $id)->update(['Deleted' => TRUE]);
    return redirect()->back()->with('success', 'Ticket has been Deleted');
}

请帮助我找出我所缺少的。

任何帮助将非常有价值。

无礼的

它不起作用的原因是您的代码将始终以第一个实例为目标,因为id每种形式的完全相同。

您不应id多次为任何元素设置相同的值。

更好的方法如下所示,它将提交正确的表单(包含<a>标记的表单)。您还缺少方法字段来告诉laravel这是一个删除请求。

<form action="Ticket/{{$Ticket->ID}}" method="POST">
    <input type="hidden" name="ID" value="{{$Ticket->ID}}">
    {{ csrf_field() }}
    {{ method_field('DELETE') }}
    <a href="" onclick="event.preventDefault(); this.parentNode.submit();">
        DELETE
    </a>
</form>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

存储器上的硬件错误,并在128个内核上进行了大型仿真

在Cordova应用中以全屏模式以纵向显示的HTML5视频在Android设备上进行了拉伸

Laravel 5控制器不会从Ajax表单接收数据

Laravel 5:首先发送响应,然后在控制器中处理请求

Visual Studio是否针对超线程微处理器进行了优化?

缓冲区填充了不同类型的数据,并进行了严格的别名处理

Kotlin警告:在Marker类型的非空接收器上进行了不必要的安全呼叫

如果我在在线GitHub编辑器上进行了更改,如何从分支中获取?

我需要检查密码是否正确,但已在数据库中进行了哈希处理

laravel 5如何将数据传递到控制器进行建模

使用带有数据库的PHPUnit Laravel 5控制器进行测试(模拟?)

在控制器中处理表单数据以创建新字段-Rails

在Angular控制器中进行Restangular POST之前更改表单数据

Laravel 5控制器异常处理程序

Laravel 8 从控制器向刀片发送数据

Saxon XSLT 处理器是否针对将隧道参数设置为其当前值进行了优化?

Rust优化器为什么不删除那些无用的指令(在Godbolt编译器资源管理器上进行了测试)?

不同的sql在两台服务器上进行了解释。“复制到tmp表”非常慢

将数据从表单传递到控制器Laravel 5

无法使用Angular将数据发布到Laravel 5控制器,错误:422无法处理的实体

我怎么知道在控制器中哪个局部视图进行了回调

Laravel在工厂播种但对其进行了扩展

枚举时对核心数据进行了变异

数据集对新行进行了更改

SuiteCRM数据库在外部进行了修改

Symfony 5:在一个控制器中处理多种表单

PageSpeed见解于2020年5月27日进行了升级

我想知道我们是否确实进行了最后5笔交易

Angular 5源文件与Webpack 4进行了半编译