[Rails雜記]Command指令、rails db指令
Command指令
因為安裝了sublime的alignment,但使用網路上的教學使用command+option+a仍無法正常縮排,所以試了很多command的指令,而發現command非常好用!
所以紀錄一下這次發現的command指令:
command + T — 開起已有檔案的頁面
command + N — 開起新頁面(非已有檔案)
command + Tab — 切換頁面
command + M — 縮小視窗
command + K — 關掉視窗command + L — 選行
command + A — 將頁面所有編碼選起來
command + X — 剪掉一整排的編碼
command + Z — 回復先前的編碼
command + F — 開啟find功能
command + / — 開ignore<!-- ### -->
Rails db指令
在Rails裡使用dev.fake創建假資料,和在seed.rb創建種子資料,因為後來在dev.fake又加入了新的屬性,所以重跑rails dev:fake時,就會造成顯現的id往上累加,而不是從1開始。要如何改正,使顯現的id變為從1開始呢?就要使用以下指令:
rails db:drop(將以往資料消除)
rails db:migrate(從新載入資料)
rails db:seed(載入需初始化設定的seed資料)
rails dev:fake(載入fake資料)
從第一個跑到最後一個指令,就能讓原本累加的id變為從1開始。很重要的一點是一定要先跑rails db:seed再跑rails dev:fake,要讓初始化設定先跑出來,否則會出現錯誤。
讓假資料能夠套上假圖片
在dev.fake加上
image: File.open(Rails.root.join("app/assets/images/#{rand(0..20).jpg}))
如下圖。在這次的設定裡,是將圖片加在app/assets/images之下,然後將圖片依序從0排列到20,利用rand的特性,將之讀出。這樣就能一口氣在500比的假餐廳資料上,加入圖片,非常便利呢!而圖片放置的位置,可依個人做調整。
設定完set_category後,若程式碼嵌在if…else…end裡,該如何取代?
在設定set_category完後,將之一樣的程式碼消除,然後在before_action的最後面加上被消除程式碼的action,就能完成重構的動作。
但對於set_category嵌在if…else…end裡,卻不知道該如何做設定,而今天發現原來可以在消除程式碼的地方上,加入set_category即可。如下圖第二個方框指示。