Python SQLAlchemy DISTINCT 範例
本文記錄幾種與 SELECT DISTINCT
相同作用的 SQLAlchemy 寫法。
Posted on Jul 12, 2019 in Python 模組/套件推薦 by Amo Chen ‐ 1 min read
本文記錄幾種與 SELECT DISTINCT
相同作用的 SQLAlchemy 寫法。
Posted on Jul 12, 2019 in Python 模組/套件推薦 by Amo Chen ‐ 1 min read
pre-commit 是一套相當方便的 Git pre-commit hooks 工具,除了內建不少好用的程式碼檢查工具之外,也同時支援 Python, Ruby, Swift, Go, Nodejs 等熱門程式語言,更能夠利用其框架(framework)針對自己的需求開發 pre-commit hooks 。
這麼好用的工具怎能不裝來使用呢!
一起利用 pre-commit 改善我們的程式碼品質吧!
Last updated on Jul 20, 2024 in 開發工具 by Amo Chen ‐ 2 min read
Connection Pool 是資料庫連線管理的機制,用來節省資料庫連線的成本,達到較高的資源利用效益。 Connection Pool 會事先與資料庫一次建立多個連線(connection),並維持住這些連線,每當應用程式(Application)需要操作資料庫時,就會從 Connection Pool 中提供(checkout)連線給應用程式使用。
但是資料庫連線也有斷線的可能,那麼要如何確保從 Connection Pool 取得的連線是可用的呢?
其中一種確定連線可用的機制就是 Pre-ping 。
本文就來談談 Pre-ping 與 SQLAlchemy 的 Pre-ping 如何設定。
Posted on Jun 5, 2019 in Python 模組/套件推薦 by Amo Chen ‐ 2 min read
提到 Python 非同步(asynchronous)工作通常都會想到 Celery ,而 Web-based 應用程式也經常會將耗時的要求利用非同步的方式完成,所以 Django, Flask 等 Web framework 也幾乎都會整合 Celery 。
其中 Flask 的 Celery 相關套件相對鮮少維護,因此不建議利用 Flask Celery 套件整合 Celery 。
所幸用 Flask 整合 Celery 並非難事,本文將紀錄如何不利用 Flask 套件的情況下整合 Celery 。
Posted on Jun 1, 2019 in Flask by Amo Chen ‐ 2 min read
SQLAlchemy ORM(Object-Relational Mapping)利用 relationship() 將多個 Model 關聯在一起,讓我們直接用存取屬性方式,直接就能夠使用被關聯的 model ,使用起來十分方便。
但是 SQLAlchemy ORM 的 relationship()
預設使用一種稱為 lazy loding
的技術,如果不了解其原理的話,很容易會有 n+1 query
的問題。
本文將簡單地談談 SQLAlchemy relationship()
。
Posted on Jun 1, 2019 in Python 模組/套件推薦 by Amo Chen ‐ 3 min read
VSCode(Visual Studio Code) 預設的檔案總管縮排是 8 像素(pixel),在專案檔案與資料夾眾多的情況下,很容易感到困惑,很難馬上找到想開啟的檔案(當然也可以用 Command + P
快速一些)。
所幸 VSCode 有提供選項能夠設定,調整完之後,不僅看起來舒爽,工作效率也增加了!
Posted on May 12, 2019 in VS Code by Amo Chen ‐ 1 min read
Redis 有個 Pub/Sub
的功能,簡單來說,就是可以發佈(publish)消息或者訂閱(subscribe)消息的功能。訂閱方跟發佈消息(message)方,都是透過所謂的 Channel 傳遞與接受訊息。
相較於選擇 RabbitMQ 這種重量級的 message broker, 如果是一些簡單的應用(Application) 其實也可以考慮選擇利用 Redis 的 Pub/Sub 達到訊息傳遞的目的。
本文簡單紀錄如何在 Python 中使用 Redis 的 Pub/Sub 。
Posted on Apr 26, 2019 in Python 程式設計 - 高階 by Amo Chen ‐ 2 min read
隨著 Gmail 與 G Suite 的普及,越來越多人擁有 Google 的帳號,因此現代應用程式在整合登入服務時,支援使用 Google 帳號的進行登入也很重要,本篇記錄如何用 Flask 整合 Google Sign-In 。
Posted on Apr 20, 2019 in Flask by Amo Chen ‐ 3 min read