我繼承項目的Grails 2.3.7,發現幾個OCCURENCES:Grails的保存(閃光燈:真)
domainInstance.save(flash:true)
我知道沖洗(即時提交更改),但無法找到任何東西flash。項目的編譯和工作沒有任何警告。它能做什麼?它只是拼寫,如果是的話,爲什麼它沒有找到並在編譯處理?
我繼承項目的Grails 2.3.7,發現幾個OCCURENCES:Grails的保存(閃光燈:真)
domainInstance.save(flash:true)
我知道沖洗(即時提交更改),但無法找到任何東西flash。項目的編譯和工作沒有任何警告。它能做什麼?它只是拼寫,如果是的話,爲什麼它沒有找到並在編譯處理?
當您使用該類型的方法調用時,實際上編譯的內容也是如此。
save(Map params)
因此,無論是..
save(flush: true)
或
save(flash: true, danceOnTheSpot: false)
沒關係。 Groovy會選擇它想要的位,並忽略它沒有的位。這在功能上等同於撥打電話。
save()
這使它真的很強大!一張包含50個方法調用參數的地圖。維護噩夢,但仍然非常酷。
正確答案!冬眠只是從那張地圖上得到它想要的東西。 –
無論好壞,Groovy都會根據變量名稱編譯許多「錯別字」。與Perl(和其他一些腳本語言)類似,您不必聲明變量,只需在使用它時鍵入它即可。對於快速編碼很酷,但意味着編譯不會遇到許多常見錯誤。
也許是一個錯字?根據[docs](http://grails.github.io/grails-doc/2.3.7/ref/Domain%20Classes/save.html),'save'沒有參數flash。 –