【问题标题】:Laravel - Generate route to the delete method through linkLaravel - 通过链接生成删除方法的路由
【发布时间】:2015-11-07 07:00:16
【问题描述】:

我有一个 PostController,其中包含所有 RESTful 方法。我可以通过在form 标签中定义方法来生成删除方法的路线,如下所示,

            <form action="{{route('post.destroy', [$post->id])}}" method="POST">
                <input type="hidden" name="_method" value="DELETE">
                <input type="hidden" name="_token" value="{{ csrf_token() }}">
                <input type="submit" value="Delete">
            </form>

但我需要用链接生成相同的路线,

<a href="{{route_to_delete_method_with_post_id}}">Delete</a>

谢谢。

【问题讨论】:

    标签: php model-view-controller laravel-routing laravel-5.1


    【解决方案1】:

    您必须创建一个链接,该链接会触发您使用 JavaScript 提交表单。您不能使用“POST”而不是“GET”方法创建链接。

    作为没有 JQuery 和适当代码分离的基本示例,将其添加到您的模板中。

    为您添加一个 ID 表单“myform”

    <script type="text/javascript">
      function submitMyform()
      {
        document.myform.submit();
      }
    </script>
    

    并将您的链接更改为:

    <a href="javascript: submitform()">Delete</a>
    

    如果您只想显示链接,请使用隐藏的表单元素。

    【讨论】:

      【解决方案2】:

      应该这样做:

      <a href="{{action ( 'route_to_delete_method_with_post_id', ['id' => $post ->id)}}">Delete</a>
      

      【讨论】:

        猜你喜欢
        • 2015-11-24
        • 2019-02-10
        • 2019-09-10
        • 2019-05-20
        • 1970-01-01
        • 2020-02-16
        • 2016-08-25
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多