摘要:事情的起源是因為在調試一段模型事件時出現的,當時隨便往數據庫里插入了一段字符串,而不是標準的。然后發現我的模型事件中查找不到當前的模型。進一步查看,這個整數大小,很熟悉,覺得應該是整數類型大小溢出了。
起源
辦法總比困難多,所以發現問題比解決問題更難得到。
事情的起源是因為在調試一段模型事件時出現的,當時隨便往數據庫里插入了一段字符串 ID,而不是標準的 uuid。然后發現我的模型事件中查找不到當前 ID 的模型。
當然,我們不可能總是能遇到問題,也有可能遇到了問題是自己的錯誤,這時候可以去Laravel的問題庫看一下自己有什么能解決的問題
進展先排除了自己本身代碼中的錯誤,然后一步一步調試
打印了一下返回變量,發現belongsToMany::sync方法返回的 ID 并不正確。
進一步查看,這個整數大小,很熟悉,覺得應該是整數類型大小溢出了。然后看了一下源碼InteractsWithPivotTable::caseKey
基本確定就是整形數字溢出了,這里只是簡單的根據變量類型進行強轉,因為 PHP 是弱類型語言,所以當長字符是一個數字字符串時,將導致無法得到正確的結果。
但我在模型中已經設置了主鍵類型為字符串,這不應該是我想要的結果。
然后我向框架提了一個issues
Laravel 的組織成員tillkruss 告訴我可以提交一個 PR
然后自己馬上行動起來,說實話解決這個問題很簡單,因為只要獲取主鍵類型,然后進行強轉即可
馬上提交了代碼,之后被駁回,原來是忘記了寫測試代碼
查看了一下其他數據庫的測試代碼,找了一個比較符合我的寫了一個數據庫的測試。提交。成功合并。
具體修改的代碼,可以查看這里 5.7 Improve the return value of the caseKey method
結束第一次為大型項目提交PR,確實感覺到不能這么隨意。
寫代碼的時候請明確解釋這段代碼的原因,你會發現框架當中很多很多的注釋
千萬不要忘記寫測試文件
當你提交PR的時候,請詳細描述你本次做了什么改動,增加了什么新功能。
盡情的表達你的想法,社區有很多人會幫助你的
最后歡迎加入Laravel學習交流群,群號:584453488
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/28703.html
摘要:容器主要的作用就是生產各種零件,就是提供各個服務。的原理我們以為例,來講解一下門面的原理與實現。當運行時,發現門面沒有靜態函數,就會調用這個魔術函數。我們看到這個魔術函數做了兩件事獲得對象實例,利用對象調用函數。 前言 在開始之前,歡迎關注我自己的博客:www.leoyang90.cn這篇文章我們開始講 laravel 框架中的門面 Facade,什么是門面呢?官方文檔: Facade...
摘要:下面是剛才說的這些步驟對應的核心代碼收集路由和控制器里應用的中間件我們在前面的文章里已經詳細的解釋過中間件和路由的原理了,接下來就看看當請求最終找到了路由對應的控制器方法后是如何為控制器方法注入正確的參數并調用控制器方法的。 控制器 控制器能夠將相關的請求處理邏輯組成一個單獨的類, 通過前面的路由和中間件兩個章節我們多次強調Laravel應用的請求在進入應用后首現會通過Http Ker...
摘要:值得一提的是每篇文章都是我用心整理的,編者一貫堅持使用通俗形象的語言給我的讀者朋友們講解機器學習深度學習的各個知識點。今天,紅色石頭特此將以前所有的原創文章整理出來,組成一個比較合理完整的機器學習深度學習的學習路線圖,希望能夠幫助到大家。 一年多來,公眾號【AI有道】已經發布了 140+ 的原創文章了。內容涉及林軒田機器學習課程筆記、吳恩達 deeplearning.ai 課程筆記、機...
摘要:而且,據說他的大女兒和小女兒都是做測試的,這是名副其實的測試世家。確定測試需求相應的測試方法獲得測試策略方案。負責這一領域測試質量保證開發內的整個開發生存周期業務。 ...
摘要:上次的訪談,介紹了下可愛的依云醬,回憶傳送門。這里簡單地介紹下龍女仆,全名小林家的龍女仆,為什么介紹這部劇呢因為設計獅顏值同學也安利了這部。劇情簡介在獨身又勞累的小林劃重點一名程序員身邊突然出現的穿著女仆服裝的美少女托爾。 showImg(https://segmentfault.com/img/bVR6p5?w=900&h=385); 上次的訪談,介紹了下可愛的依云醬,回憶傳送門。不...
閱讀 642·2021-11-25 09:43
閱讀 1655·2021-11-18 10:02
閱讀 1033·2021-10-15 09:39
閱讀 1877·2021-10-12 10:18
閱讀 2115·2021-09-22 15:43
閱讀 756·2021-09-22 15:10
閱讀 2084·2019-08-30 15:53
閱讀 978·2019-08-30 13:00