您好,登錄后才能下訂單哦!
小編給大家分享一下Laravel修改數據與原數據一樣導致沒有執行sql怎么辦,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
$openid = "123"; // 微信openid User::WhereIn("id",['1','2','3'])->update([ 'openid' => $openid ]); $user = User::find(1); // 取消所有這個openid的綁定者 User::Where(['openid' => $openid])->update([ 'openid' => null ]); // 給1號用戶綁定openid $user->openid = $openid; $user->save();
問題: openid = 123
有幾個?
答案: 一個都沒有。
getDirty
會返回 $user
的 original
(查詢出來的 不允許改變) 和 attributes
(手動賦值的) 不同的地方,
最后發現屬性都一樣,所以 $user->save()
不會執行修改。
寫 微信綁定
的時候發現不對勁,還以為是 laravel
或者 mysql
的 bug
以上是“Laravel修改數據與原數據一樣導致沒有執行sql怎么辦”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。