【问题标题】:Removing a user from a , project_user pivot table从 , project_user 数据透视表中删除用户
【发布时间】:2019-02-04 15:07:36
【问题描述】:

我正在尝试从项目中删除用户,我的项目有不同的用户,我知道我应该使用 detach 方法,但我真的不知道如何去做,试图了解路由和,表单操作中的 URL。 这是删除表单

            <h5>Team Members</h5>
              <ol class="list-unstyled">
                @foreach ($project->addedUsers as $user)
                <li><a href="/projects"> {{ $user->name }}</a>

                 <a href="#"
                 onclick="
                 var result =confirm('Are you sure you want to delete this User?');
                 if(result){
                     event.preventDefault();
                     document.getElementById('delete-user').submit();
                     }"
                 >
                 <i class="fas fa-minus-circle"></i></a>
                 <form id="delete-user" action="/projects/{{$project->id}}/deleteuser" method="post" display="none">
                     @csrf
                     @method('DELETE')
                     <input type="hidden" name="project_id" value="{{$project->id}}">
                     <input type="hidden" name="user_id" value="{{$user->id}}">
                     </form>
                </li>

                @endforeach

项目控制器

  public function deleteuser(Project $project){
           dd('hello');
           $project = Project::findorfail(request('project_id'));
           $user= User::where('id', request('user_id'))->first();
                $project-> addedUsers()->detach($user);

                return redirect('projects.show')->with('success', 'User deleted successful');
               }

路由文件

   Route::delete('projects/{$project}/deleteuser', 'ProjectsController@deleteuser');

我知道大部分是错误的,但也许你可以指引我正确的方向

【问题讨论】:

  • 请分享您的代码!

标签: laravel eloquent


【解决方案1】:

经过反复试验,终于搞定了,哈哈

项目负责人

  public function deleteuser(Request $request){

           $project = Project::findorfail(request('project_id'));
           $user= User::where('id', request('user_id'))->first();
                $project-> addedUsers()->detach($user);

                return back() ->with('success', 'User deleted successful');
               }

路线

 Route::delete('projects/{id}/deleteuser', 'ProjectsController@deleteuser');

删除表格

 <h5>Team Members</h5>
                      <ol class="list-unstyled">
                        @foreach ($project->addedUsers as $user)
                        <li><a href="/projects"> {{ $user->name }}</a>

                         <a href="#"
                         onclick="
                         var result =confirm('Are you sure you want to delete this User?');
                         if(result){
                             event.preventDefault();
                             document.getElementById('delete-user').submit();
                             }"
                         >
                         <i class="fas fa-minus-circle"></i></a>
                         <form id="delete-user" action="/projects/{{$project->id}}/deleteuser" method="post" display="none">
                             @csrf
                             @method('DELETE')
                             <input type="hidden" name="project_id" value="{{$project->id}}">
                             <input type="hidden" name="user_id" value="{{$user->id}}">
                             </form>
                        </li>

                        @endforeach


                      </ol>
                    </div>

【讨论】:

    猜你喜欢
    • 2021-06-03
    • 1970-01-01
    • 2011-09-07
    • 1970-01-01
    • 2020-11-18
    • 2018-07-26
    • 1970-01-01
    • 1970-01-01
    • 2021-10-23
    相关资源
    最近更新 更多