小编Ben*_*Ben的帖子

更新laravel 5.2中多对多关系表中存在的列

我有三个表,分别是User表,Events表和Events_user表.我在Events_user表中有四列是:

   Schema::create('events_user', function(Blueprint $table){

            $table->increments('id');
            $table->integer('user_id')->unsigned()->index();
            $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');

            $table->integer('events_id')->unsigned()->index();
            $table->foreign('events_id')->references('id')->on('events')->onDelete('cascade');

            $table->integer('eventstatus')->unsigned()->index();

            $table->timestamps();
        });
Run Code Online (Sandbox Code Playgroud)

我有一个函数,它在用户id上添加一个事件库,显示一个用户可以拥有许多事件.但该事件可以与其他用户共享.功能是这样的:

  public function store(EventsRequests $request){

        $id = Auth::user()->id;
        $events= Events::create($request->all());
        $events->user()->attach($id); //Store the User_ID and the Event_ID at the events_user table.

        Flash::success('Your event has been created!');
        return redirect('/');//Return into home page

//        return $events;
    }
Run Code Online (Sandbox Code Playgroud)

然后它会帮我更新我的events_user表,但是如何更新eventstatus列呢?任何人都可以告诉我如何更新它?因为我想使用eventstatus帮我确定是否有'1'然后无法编辑,然后编辑按钮将消失.有多少种方法可以实现这个功能?


对于显示页面:我在用户点击日历视图中存在的事件时使用该功能,然后javascript将ID返回并重定向到具有id的视图.

public function show($id){
//            $user_id=Auth::user()->name;
            $showevents = Events::findOrFail($id);
            return view('events.show',compact('showevents','user'));
    }
Run Code Online (Sandbox Code Playgroud)

当我想将eventstatus传递给视图时怎么样?所以我可以查看我的视图,如果eventstatus等于1,则编辑按钮不会显示.


更新了关系模型

user.php的

   public function events(){
        return $this->belongsToMany('App\Events');
    }
Run Code Online (Sandbox Code Playgroud)

Events.php

   public function user(){
        return $this->belongsToMany('App\User')->withPivot('eventstatus');
    }
Run Code Online (Sandbox Code Playgroud)

php mysql laravel laravel-5 laravel-5.2

9
推荐指数
1
解决办法
2986
查看次数

标签 统计

laravel ×1

laravel-5 ×1

laravel-5.2 ×1

mysql ×1

php ×1