Laravel雄辩地错误地更新了每一行的值

塞姆坎

我的目的:

1.从用户输入获取行的ID,
2.更改所选行的值的第一行。

我有一个这样的模型:

myModel.php

class myModel extends Eloquent{
   protected $table = 'myTable';
   protected $primaryKey = 'id';
   public $timestamps = false;
   public incrementing = false;
   protected fillable = array(
      'id', //yes it needs to be fillable...
      'name',
      'surname'
   );
}

myController.php

class myController extends BaseController{
   public function someFunction(){
      $modelInstance = myModel::where('id', Session::get('id'))
         ->where('otherID', Input::get('someHTMLInput'))
         ->first();

      $modelInstance->id = Session::get('id');
      $modelInstance->name = Input::get('someNameInput');
      $modelInstance->surname = Input::get('someSurnameInput');

      $modelInstance->save();
   }
}

这是发生的情况

1.我可以很好地发布从输入中获取的值
2.当涉及到控制器的save方法时,查询会更新每行的值,包括后面的ID号。

即在数据库上

id=1; otherID=1; name=aaa; surname=bbb;
id=1; otherID=2; name=xxx; surname=yyy;
id=1; otherID=3; name=ccc; surname=ddd;

当我尝试更改名称aaa-> rrr时,会发生以下情况:

id=1; otherID=1; name=rrr; surname=bbb;
id=1; otherID=2; name=rrr; surname=yyy;
id=1; otherID=3; name=rrr; surname=ddd;

提前致谢。

Lukasgeiter

雄辩的当前不支持复合主键。如果您想表达对此问题的支持,请在github上进行讨论


您可以做的是:

myModel::where('id', Session::get('id'))
    ->where('otherID', Input::get('someHTMLInput'))
    ->update([
        'name' => Input::get('someNameInput'),
        'surname' => Input::get('someSurnameInput')
    ]);

但是,您几乎可以使用所有模型功能。它基本上与以下内容相同:

DB::table('my_model')->where('id', Session::get('id'))
    ->where('otherID', Input::get('someHTMLInput'))
    ->update([
        'name' => Input::get('someNameInput'),
        'surname' => Input::get('someSurnameInput')
    ]);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Laravel雄辩地选择每个组的第一行

来自分类Dev

高效地遍历每一行?

来自分类Dev

如何在Laravel中雄辩地获得分组依据的最后一行

来自分类Dev

雄辩地选择组的最后一行

来自分类Dev

SQL有条件地更新每一行

来自分类Dev

laravel更新,雄辩地消除一对多关系

来自分类Dev

Laravel雄辩地更新一对多关系

来自分类Dev

Laravel雄辩地更新一对多关系

来自分类Dev

Laravel雄辩地返回错误的数据

来自分类Dev

雄辩地更新所有行

来自分类Dev

Laravel-雄辩地获取枚举值

来自分类Dev

Laravel 4雄辩地分配BIT值

来自分类Dev

如何有效地更新许多百万行表中每一行的INT列

来自分类Dev

Laravel雄辩地投票

来自分类Dev

Laravel雄辩地循环

来自分类Dev

Laravel雄辩地投票

来自分类Dev

如何在模型中雄辩地在laravel中插入一行时如何获取最后一个id

来自分类Dev

打印每一行,但有条件地仅打印某些行的片段

来自分类Dev

如何有效地在Pyspark的数据帧的每一列上为每个最小值或最大值获取一行?

来自分类Dev

动态行值错误地更新到mysql php

来自分类Dev

当输入字段中的值在p:dataTable的一行中更改时,有条件地更新选择列表

来自分类Dev

雄辩地在重复密钥更新

来自分类Dev

有条件地对数据帧的每一行进行计数

来自分类Dev

如何有效地从熊猫数据框中减去每一行?

来自分类Dev

Laravel-雄辩地更改默认值

来自分类Dev

Laravel 4-雄辩地替换空值

来自分类Dev

Laravel雄辩地忽略套管

来自分类Dev

雄辩地过滤laravel集合

来自分类Dev

Laravel雄辩地仅根据关系字段检索某些行