每当我像这样运行为什么保存只能用于创建和不更新?
$foo = Foo::find(1);
echo $foo->bar; // echoes 400
$foo->bar = 300;
echo $foo->bar; // echoes 300
$foo->save();
echo $foo->bar; // echoes 300
$foo = Foo::find(1);
echo $foo->bar; // echoes 400 - it didn't save! no changes to the table
什么也没有发生代码。但这个作品:
$foo = new Foo;
$foo->bar = 200;
echo $foo->bar; // echoes 200;
$foo->save(); // a new entry is added to my table
我无法更新(更改模型,但它不保存),但添加新条目的作品。为什么?
(美孚延伸Model类,杆为一列)
你确定你的对象有一个ID密钥?否则,Laravel不知道哪一行更新。 –
您使用的是什么版本的Laravel?你使用的是哪个数据库?你还可以发布你的模型的内容? –
我能想到'save()'wont * save *的唯一场景就是如果你正在保护'bar'不受大众分配的影响! – teeyo