【问题标题】:Function work only with first button. Laravel 7功能仅适用于第一个按钮。拉拉维尔 7
【发布时间】:2020-06-12 12:32:52
【问题描述】:

我在 laravel 7 上编写应用程序。 为课程编写代码后,其负责删除的部分仅适用于第一个位置。负责更改的部分 - 适用于所有职位。请帮忙。

示例工作编辑代码

public function edit(User $user)
{   

    if(Gate::denies('edit-users'))
    {return redirect(route('admin.users.index'));}

    $roles = Role::all();

    return view('admin.users.edit')->with([
        'user' => $user,
        'roles' => $roles
    ]);
}

示例不是在所有位置都工作破坏

public function destroy(User $user)
{   
    if(Gate::denies('edit-users'))
    {return redirect(route('admin.users.index'));}

    $user->roles()->detach();
    $user->delete();
    return redirect()->route('admin.users.index');
}

和示例菜单代码

 <tbody>
                    @foreach($users as $user)
                    <tr>
                        <th scope="row">{{$user->id}}</th>
                        <td>{{$user->name}}</td>
                        <td>{{$user->email}}</td>
                        <td>{{implode (', ',$user->roles()->get()->pluck('name')->toArray())}}</td>
                        <td>
                        <a href="{{ route('admin.users.edit', $user->id) }}" class="btn btn-primary float-left">Edit</a>
                        <form action="{{route('admin.users.destroy', $user)}}" method="POST" class="float-left">
                            @csrf
                            {{ method_field('DELETE') }}
                             <button type="submit" class="btn btn-danger" onclick="return confirm('Sure to delete {{ $user->name }}?')">Delete</button>
                        </form>
                        </td>
                    </tr>
                    @endforeach
                  </tbody>

路线列表

【问题讨论】:

  • first position 是什么意思?
  • 只对菜单上的第一个位置起作用,而忽略其他位置。
  • 删除其他职位时发生了什么?
  • 如果我点击其他按钮,我有确认窗口,然后什么都没有。不删除,不执行任何操作
  • 您永远不会关闭您的表单。这可能会混淆它

标签: php laravel laravel-7


【解决方案1】:

感谢@aynber 和@apokryfos 解决了我的问题。

像这样编辑我的代码,它开始工作了

<form action="{{route('admin.users.destroy', $user->id)}}" method="POST" class="float-left">
@csrf
{{ method_field('DELETE') }}
<button type="submit" class="btn btn-danger" onclick="return confirm('Sure to delete {{ $user->name }}?')">Delete</button>
</form>

【讨论】:

  • 接受你自己的答案
猜你喜欢
  • 2022-01-26
  • 2018-11-13
  • 2018-02-13
  • 1970-01-01
  • 2020-12-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-07
相关资源
最近更新 更多