Docker - 什麼是 Compose

之前我們介紹了 Dockerfile 的基本指令, 這次的主題我們要來介紹 docker-compose.yml 關於 docker-compose.yml是什麼?官方的說明 Compose is a tool for defining and running multi-container Docker a...

工程師都該懂的程式通識 - 語言的分類

直譯語言與編譯語言 直譯語言是什麼?簡單來說不是使用編譯器來編譯,而是使用解釋器邊讀取邊執行,像是 Ruby、Python、JavaScript 都是直譯語言 編譯期:並沒有明確的編譯期,由直譯語言的解釋器 (Interpreter)進行編譯,可以一邊讀取一邊執行,讀取完後會執行該程式碼,並且檢查語法,解釋器 (...

Rails 的預設環境變數存取方式 - Master Key

在 Rails 5.2 版本後,Master key 就成了 Rails 內建的環境變數套件,用於管理環境變數 在 5.2 版本前, Rails 是使用 config/secrets.yml 或 config/secrets.yml.erb 來存取環境變數,且可以直接在任何環境中直接設定,無需針對特定環境做一個檔...

叫我套件王 - 會員系統 Devise【1】

為什麼要用 Devise 支援多種會員系統模組 有許多方便的方法 前置作業: 建立一個 rails 專案 (本文章使用 7 版本) 安裝 devise gem 那我們就進入正題! Step 1 把 devise 安裝起來1$ bundle add devise 1$ rails generate devis...

Docker - Dockerfile 基本介紹及指令

我們在先前文章提過,Dockerfile 是我們用來建立 Image 的檔案 我們可以把 Dockerfile 想像成是千層蛋糕 每一層為一個 Layer Image 就是層層堆疊後的千層蛋糕 讓我們來看一下 DockerHub 裡的 Ruby 按到 Tags 頁籤,任意按一個版號進去, 就會看到像是歷史...

Docker - 一起探索大鯨魚的奧妙

為什麼要用 Docker不曉得大家是不是常遇到要開啟一個專案,卻因為裝置不相容,在安裝的過程中要一直 debug 的狀況,有時候甚至架不起來? Docker 就是為了解決這個問題而出現的 什麼是 DockerDocker 是一種架設出虛擬環境的工具,我們可以透過 Docker 將應用程式單獨切分出來,並且用容器包...

Basic - 環境變數

什麼是環境變數?在我們開始之前,讓我們先了解環境是什麼 環境環境是指 operating system 或 microservice,例如我們常用的終端機。 變數在任何程式語言中,我們有兩個基本元素:常數和變數 他被會由一個 key 跟 value 配對而成 常數:在執行期間不會被改變及重新定義(不過在某些...

Postgresql - JSONB 是什麼?跟 JSON 有什麼差別?

jsonb 是什麼 PostgreSQL支援的特有格式,而 b 指的是 binary ,因為 jsonb 是使用二進位來儲存格式 json 跟 jsonb 的差別 什麼時候會用到 在 rails 該怎麼使用 new 一個專案 1> rails new jsonb_0602 gemfile 安裝...

SQL - 不管是交集還是聯集,JOIN 都能找到

Joins上一篇我們介紹了 includes 跟 joins 的差異,今天想介紹一下 Joins 的各式用法及不同 先來假設我們今天有兩個 TABLE1 跟 TABLE2 TABLE1 存放了 學生的資料(table name = Student) id name phone email cour...

SQL - Joins、Includes 差別在哪裡?

Join and Includes我們在開發的時候免不了關聯資料庫,在撈資料的時候也常常會需要用到 joins 跟 includes 所以,我們什麼時候會用到 joins 跟 includes 要尋找跟其他 model 有關聯的資料 避免 N + 1 問題 ** N + 1 問題是什麼呢?當我們查詢多筆資料時,...