laravel中的复选框控制器

laravel中的复选框控制器,laravel,model-view-controller,laravel-5,Laravel,Model View Controller,Laravel 5,你好,这是我在拉雷维尔的控制器,我这里没有问题。如果我手动输入值为1的数据集,它会检查文件,但如果我使用系统输入数据集,它不会更新该值,并且该框保持为0,而未选中该框 我试图做的是,如果用户勾选了框,则勾选框,并保持勾选状态,直到用户勾选为止,同时更新数据库值。先谢谢你 public function tickoffUpload($id, $type, User $user) { $uploads = $this->upload->get($id); // if(

你好,这是我在拉雷维尔的控制器,我这里没有问题。如果我手动输入值为1的数据集,它会检查文件,但如果我使用系统输入数据集,它不会更新该值,并且该框保持为0,而未选中该框

我试图做的是,如果用户勾选了框,则勾选框,并保持勾选状态,直到用户勾选为止,同时更新数据库值。先谢谢你

public function tickoffUpload($id, $type, User $user) {

    $uploads = $this->upload->get($id);

    // if($this->request->isMethod('get')) {
    //      if($user->can('untick', $uploads)) {
    //           $uploads = $this->upload = 0;
    //      } else {
    //           return $uploads = $this->upload = 1;
    //      }
    //  }

     if($this->request->isMethod('get')) {
        if($type == 0) {
             $uploads = $this->upload = 1;
        } else if($type == 1){
            $uploads = $this->upload = 0;
            }
     }

    if(isset($_POST["uploaded"]) && !empty($_POST["uploaded"])) {

        $uploads->uploaded = $this->request->uploaded;
        $uploads->save(); 
    }

    return redirect('/home');
}

我已经解决了这个问题。我没有从表单中获取请求值,正如您在这里看到的
$uploads->upload=$this->upload=1这里是我做过和做过的更新代码

public function tickoffUpload($id, $type, User $user) {

    $uploads = $this->upload->get($id); //gets upload id

     //   requesting uploaded value either 0 or 1
     if($this->request->isMethod('get')) {
        if($type == 0) {
            $uploads->uploaded = $this->request->upload = 1;
        } else if($type == 1) {
            $uploads->uploaded = $this->request->upload = 0;
            }
     }

    $uploads->save();   //  saving the value in database

    return redirect('/home');
}

感谢您
d3r1ck
的帮助……)

我已经解决了这个问题。我没有从表单中获取请求值,正如您在这里看到的
$uploads->upload=$this->upload=1这里是我做过和做过的更新代码

public function tickoffUpload($id, $type, User $user) {

    $uploads = $this->upload->get($id); //gets upload id

     //   requesting uploaded value either 0 or 1
     if($this->request->isMethod('get')) {
        if($type == 0) {
            $uploads->uploaded = $this->request->upload = 1;
        } else if($type == 1) {
            $uploads->uploaded = $this->request->upload = 0;
            }
     }

    $uploads->save();   //  saving the value in database

    return redirect('/home');
}

感谢您
d3r1ck
的帮助……)

我认为你的问题来自这一行:
$uploads=$this->upload=1
,您正在为$uploads分配一个值,它是一个对象而不是变量,因此您应该执行如下操作:
$uploads->variable\u to\u update=$this->upload=1。应该用相应的变量替换,就像您在
$uploads->upload=$this->request->upload中所做的那样它仍然不工作。。。它没有更新数据库中的值。当我单击复选框时,它仍然是0,并且它仍然未选中数据库值0。这就是我所做的
$uploads->upload=$This->upload=1
因为upload是从view my view.php
中分配0和1的值,所以我认为您的问题来自这一行:
$uploads=$this->upload=1
,您正在为$uploads分配一个值,它是一个对象而不是变量,因此您应该执行如下操作:
$uploads->variable\u to\u update=$this->upload=1。应该用相应的变量替换,就像您在
$uploads->upload=$this->request->upload中所做的那样它仍然不工作。。。它没有更新数据库中的值。当我单击复选框时,它仍然是0,并且它仍然未选中数据库值0。这就是我所做的
$uploads->upload=$This->upload=1
因为上传是从视图my view.php分配0和1的值