(6)添加刪除歷史記錄功能住拭,delete和destroy

切換到新的分支進行開發(fā)

git checkout -b sixth/delete_history

案例進行

  • 添加路由


    image.png
  • 添加刪除動作


    image.png
  • 在視圖頁面添加刪除歷史記錄的按鈕


點擊清空歷史記錄后勃刨,歷史記錄全部清空了幔嗦,如下:


查看控制臺信息,發(fā)現(xiàn)sql查詢結(jié)果如下游岳,造成冗余查詢政敢,302代表臨時性跳轉(zhuǎn)(這個日后補充相關(guān)知識):


修改刪除動作


可以看到修改后的sql語句只有一條


如上還是錯誤的,不安全的寫法胚迫。因為我們應(yīng)該避免使用delete喷户。我們要修改成destroy方法才行,不然無法觸發(fā)我們在模型文件里面的回調(diào)函數(shù)访锻。

  • Delete: 在[數(shù)據(jù)庫]中直接刪除記錄
  • Destroy:先在model中找到該記錄褪尝,然后在刪除闹获,這意味著會調(diào)用callback,比如”before destroy“
    所以我們應(yīng)該修改為:


控制臺信息:


上面我們發(fā)現(xiàn)使用destroy_all執(zhí)行了多條sql河哑,這是因為我們每刪一條記錄理論上都要經(jīng)過一次模型層的驗證和觸發(fā)回調(diào)避诽,所以不是一條sql語句可以實現(xiàn)的。查看destroy_all的源碼璃谨,我們可以看到該接口的實現(xiàn)本身就是each遍歷調(diào)用destroy方法沙庐,所以與each出來一個個destroy的結(jié)果是一樣的,都會有多條sql語句睬罗。


而我們查看delete_all的源碼轨功,可以發(fā)現(xiàn)與destroy_all不同旭斥,沒有each逐漸遍歷執(zhí)行delete容达,這也就是delete_all只會執(zhí)行1條sql的原因。

把修改提交到遠程倉庫

git add .
git commit -m "添加刪除歷史記錄功能"
git push -u https://github.com/xiaohuacc/active_record.git sixth/delete_history

合并到主分支

git checkout master
git merge sixth/delete_history
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末垂券,一起剝皮案震驚了整個濱河市花盐,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌菇爪,老刑警劉巖算芯,帶你破解...
    沈念sama閱讀 211,194評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異凳宙,居然都是意外死亡熙揍,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評論 2 385
  • 文/潘曉璐 我一進店門氏涩,熙熙樓的掌柜王于貴愁眉苦臉地迎上來届囚,“玉大人,你說我怎么就攤上這事是尖∫庀担” “怎么了?”我有些...
    開封第一講書人閱讀 156,780評論 0 346
  • 文/不壞的土叔 我叫張陵饺汹,是天一觀的道長蛔添。 經(jīng)常有香客問我,道長兜辞,這世上最難降的妖魔是什么迎瞧? 我笑而不...
    開封第一講書人閱讀 56,388評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮逸吵,結(jié)果婚禮上夹攒,老公的妹妹穿的比我還像新娘。我一直安慰自己胁塞,他們只是感情好咏尝,可當(dāng)我...
    茶點故事閱讀 65,430評論 5 384
  • 文/花漫 我一把揭開白布压语。 她就那樣靜靜地躺著,像睡著了一般编检。 火紅的嫁衣襯著肌膚如雪胎食。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,764評論 1 290
  • 那天允懂,我揣著相機與錄音厕怜,去河邊找鬼。 笑死蕾总,一個胖子當(dāng)著我的面吹牛粥航,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播生百,決...
    沈念sama閱讀 38,907評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼递雀,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了蚀浆?” 一聲冷哼從身側(cè)響起缀程,我...
    開封第一講書人閱讀 37,679評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎市俊,沒想到半個月后杨凑,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,122評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡摆昧,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,459評論 2 325
  • 正文 我和宋清朗相戀三年撩满,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片绅你。...
    茶點故事閱讀 38,605評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡伺帘,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出勇吊,到底是詐尸還是另有隱情曼追,我是刑警寧澤,帶...
    沈念sama閱讀 34,270評論 4 329
  • 正文 年R本政府宣布汉规,位于F島的核電站礼殊,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏针史。R本人自食惡果不足惜晶伦,卻給世界環(huán)境...
    茶點故事閱讀 39,867評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望啄枕。 院中可真熱鬧婚陪,春花似錦、人聲如沸频祝。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,734評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至沽一,卻和暖如春盖溺,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背铣缠。 一陣腳步聲響...
    開封第一講書人閱讀 31,961評論 1 265
  • 我被黑心中介騙來泰國打工烘嘱, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人蝗蛙。 一個月前我還...
    沈念sama閱讀 46,297評論 2 360
  • 正文 我出身青樓蝇庭,卻偏偏與公主長得像,于是被迫代替她去往敵國和親捡硅。 傳聞我的和親對象是個殘疾皇子哮内,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,472評論 2 348

推薦閱讀更多精彩內(nèi)容