Type something to search...

Blog Posts

Rack 的 Middleware 的執行順序
Rack 的 Middleware 的執行順序

看〈為你自己學 Ruby on Rails〉介紹 Rack 的 Middleware 執行順序看不太懂,於是就研究了一下原始碼,看看是怎麼回事 因為常常聽到 Middleware Middleware 的,但是又不太懂,於是在網路上找到龍哥寫的文章,非常簡顯易懂,跟著動手做可以知道 Rack 要怎麼使用。 但是在「Middleware 的順序?」這的章節看不太懂盤子的比喻,於是決定直接在看原始

read more
玩玩看 Spotify 的 Authorization Code Flow with PKCE
玩玩看 Spotify 的 Authorization Code Flow with PKCE

看到 Spotify 有支援另外一種 Authorization Code Flow,叫做 Authorization Code Flow with Proof Key for Code Exchange (PKCE),來玩玩看 Authorization Code Flow with PKCE 跟 Authorization Code Flow 的差異在於。為了怕使用者的 code 被中間人竊

read more
玩玩看 KKBOX 與 Spotify 的 OAuth 2.0
玩玩看 KKBOX 與 Spotify 的 OAuth 2.0

心血來潮想玩看看 KKBOX 的 Open API,也一起測試了 Spotify 的部分。這次主要是試試看 OAuth 2.0 Authorization Code Flow 的授權流程,過程都是利用 Postman 來操作。 <LinkCard url="https://developer.spotify.com/documentation/general/guides/authoriza

read more
好像搞懂 searchkick 的 field 到底是怎麼用的了
好像搞懂 searchkick 的 field 到底是怎麼用的了

之前在看 searchkick 的 Github README 時,一直搞不懂 field 這個單位到底是什麼,於是花了一點時間來研究, gem 本人在此: searchkick 這個 gem 是封裝了幾個 Elasticsearch 相關的 gem,讓我們用 ActiveRecord 的方式,去操作 Elasticsearch 的 API。 <LinkCard url="https://

read more
ActiveRecord 的 default_attributes
ActiveRecord 的 default_attributes

在 Rails server 沒有重開的情況下,更動資料庫表的欄位預設值,會有意想不到的事情發生 以下是用 Rails 6.0.3.2 + MySQL 5.6 實驗 事情是這樣的 有一張 tasks 表,有個欄位 completed,預設值為 false,且不能為 NULL create_table "tasks", options: "ENGI

read more
How to Update Your Pry Prompt Setting since v0.13.0
How to Update Your Pry Prompt Setting since v0.13.0

The pry gem changed itsPry::Prompt API since v0.13.0, and deprecated setting prompt through Pry.config.prompt = [] . If you have customized this way, you should use t

read more
LBE平行空間 要怎麼備份 LINE
LBE平行空間 要怎麼備份 LINE

昨天要幫強者我朋友研究,用「LBE平行空間」裝的 LINE,怎麼無法用 Google 帳號備份。 錯誤情境 錯誤的情境是,點選「備份至Google雲端硬碟」或是點選「Google帳號>選擇LINE的帳戶」後,都會跳出「錯誤 無法正常執行!」。 找線索 Google 後發現有網友說可能是權限的問題,於是我就去檢查使用平行時空裝的 LINE,裡面所用的 google 帳號,帳號後台

read more
[MySQL] 對不存在的 row 加鎖,會造成 Deadlock
[MySQL] 對不存在的 row 加鎖,會造成 Deadlock

[MySQL] 對不存在的 row 加鎖,會造成 Deadlock 一個範例 初始資料設定 CREATE TABLE `users` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL DEFAUL

read more
[MySQL] 跑個 migration 怎麼就倒站了
[MySQL] 跑個 migration 怎麼就倒站了

如果網站正在 migrate 時,剛好遇到一個 transaction 沒有結束,就算只是 SELECT ,也有可能讓網站倒站。 一個血淋淋的例子 某個沒有經驗的工程師 A: 對 users table 做一些簡單的查詢,但是開啟了 transaction 沒有 commit BEGIN; SELECT * FROM users; ...**正在

read more