[Coscup] RUBY 上 REDIS 的四種寫法

講者: 丁盛豪 (網路代號: 東仙隊長) github 1. redis-rb redis.get、redis.set 最核心的 code 只有 5 行 redis get、set override 了 method missing 2. action cable 也用了 redis rails 是多線程的 model 在 ruby 裡面 redis 是非同步的 i/o blocking response time 裡有百分之 90 都是 i/o blocking time 文件裡 »

migrate 新電腦後 rbenv install version 報錯處理紀錄

最近公司換了新電腦, 我是直接用 mac to mac 的方式轉移資料 轉移後, 在新電腦上使用 rbenv 安裝新版本的 ruby 時報錯了 後來找到的解法是要將 /usr/local/include rename 成 /usr/local/include_old 即可解決 Ref: Can’t install ruby on macOS High Sierra Broken c++ std libraries on macOS High Sierra 10.13 »

[Ruby] rbenv bundle 問題

最近改用 rbenv, 在專案下 bundle 時遇到以下問題 rbenv: bundle: command not found The `bundle' command exists in these Ruby versions: 2.1.2 2.1.5 2.1.8 2.2.1 2.2.8 2.3.3 2.5.3 解決方法: 看目前 Gemfile.lock 裡面 bundle 的版本 $ cat Gemfile.lock | grep -A 1 "BUNDLED »

[Ruby] to_sentence

常常看到收集 error 的 code 會這樣寫 errors.full_messages.to_sentence to_sentence 是用來做什麼的呢? 來看一下官方飯粒 [].to_sentence # => "" ['one'].to_sentence # => "one" ['one', 'two'].to_sentence # => "one and two" ['one', 'two »

[Ruby] 除法結果 浮點數

在 Ruby 中 , 除法的結果想要為浮點數 用直接除的方式是不行的 例如: 10 除 4 , 我預期得到的結果為 2.5 但是如果直接下 10 / 4 會回傳整數 2 讓計算結果回傳浮點數有幾種方法 在除數或被除數加上小數點 除數或被除數先轉浮點數 使用 ruby 的 fdiv »

[Ruby] URI.join 的雷

先說結論 多個參數時 , 參數後若沒有加斜線 “/” (slash) , 將不會被視為 folder , 會被略過 , 只吃最後一個參數 我們來測試一下 // host 後面加 3 個參數 URI.join("https://test.com", 'a', 'b', 'c').to_s a, b 被吃掉了 接著在 a 後面加上 slash a 出現了 ! a , b 都加 slash 的話 結果如下: 下面這篇文章去挖 source code 探討了沒加 slash »