Daphne 無法抓取 CSS 解決方法
背景Daphne 是用於運行 Django ASGI 應用的服務器。它主要負責處理 WebSocket 和 HTTP 請求,但 Daphne 本身不直接提供靜態文件服務(如 CSS、JS)。這通常導致在使用 Daphne 部署 Django 應用時,訪問 /static/ 路徑返回 404 錯誤。 問題現象當使用 Daphne 啟動應用並訪問 Django 的後台管理介面或靜態頁面時,靜態文件無法正常加載,終端可能顯示以下錯誤: 12Not Found: /static/admin/css/login.cssNot Found: /static/admin/css/base.css 問題原因Daphne 不處理靜態文件。Django 預設需要 collectstatic 將所有靜態文件集中到一個目錄,並需要一個服務器(如 WhiteNoise 或 Nginx)來提供靜態文件支持。 解決方法方法 1:使用 WhiteNoise 提供靜態文件WhiteNoise 是一個用於提供靜態文件的中介軟體,適合簡單的部署需求。 步驟 1:安裝 WhiteNoise在虛擬環境中安裝...
C++ 筆記 - Vector 使用方式
Vector 實戰教學1. vector 的基本操作定義與初始化12345678910111213141516171819202122#include <iostream>#include <vector>using namespace std;int main() { // 定義一個空的 vector vector<int> vec; // 定義並初始化 vector<int> vec2 = {1, 2, 3, 4, 5}; // 定義固定大小的 vector,初始值為 0 vector<int> vec3(5, 0); // 5 個元素,每個元素初始值為 0 // 輸出 vec2 的內容 for (int x : vec2) { cout << x << " "; } return 0;} 輸出: 11 2 3 4 5 2....
撰寫 Python 發送成績給學生確認
程式功能概述此 Python 程式使用 smtplib 庫來自動發送學生成績通知郵件。從 Excel 檔案中讀取每位學生的成績,並依據其學號生成專屬郵件,郵件以純文字格式發送至指定學校郵箱地址。為了避免 Gmail 將郵件自動摺疊,程式為每封郵件添加了唯一的時間標記。 步驟詳解1. 準備所需的程式庫我們使用以下程式庫: pandas:讀取 Excel 檔案,將學生的成績資料導入程式。 smtplib:用於設置 SMTP 伺服器並發送郵件。 datetime:生成唯一的時間標記,避免 Gmail 認定郵件內容相同。 12345import pandas as pdimport smtplibfrom email.mime.text import MIMETextfrom email.mime.multipart import MIMEMultipartfrom datetime import datetime 2. 讀取 Excel 檔案使用 pandas 讀取 Excel 檔案的「工作表 1」工作表。只提取所需的欄位:班級、學號、姓名、隨堂1 至...
Django WebSocket 前後端即時通訊
全部步驟總結 安裝必要的套件: 1pip install channels channels_redis channels:使 Django 支持 WebSocket。 channels_redis:用來實現 Channel Layer,讓不同的 WebSocket 連接能夠進行通訊。 設定 Django 專案: 在 settings.py 中添加 Channels 和 Channel Layer 配置: 12345678910111213141516INSTALLED_APPS = [ # 其他已安裝的應用 'channels', 'chat', # 你的 WebSocket 應用]ASGI_APPLICATION = 'classify.asgi.application'CHANNEL_LAYERS = { 'default': { 'BACKEND':...
Line Bot 與 Openai & SQL 03 - 成績查詢
參考來源 : https://www.youtube.com/watch?v=IfzY0axpjD8&t=333s 基於 LINE Bot 與 OpenAI 的 MySQL 學生成績管理系統教學文件目錄 前言 系統需求與工具 資料庫設計與結構 插入 15 位學生的資料 為每位學生插入成績 使用 OpenAI 生成 SQL 語句 LINE Bot 與 OpenAI 整合 查詢學生成績 常見問題與解決方案 結論 1. 前言本教學文件將指導您如何建立一個基於 MySQL 的學生成績管理系統,並通過 LINE Bot 與 OpenAI 的整合來查詢和管理數據。我們將介紹如何使用 LINE Bot 接收訊息、OpenAI 自動生成 SQL 語句,並通過 MySQL 查詢學生的成績。 2. 系統需求與工具系統需求: 安裝了 MySQL 伺服器 Python 3 環境(Flask、OpenAI 和 LINE Bot SDK) MySQL 客戶端或管理工具(如 MySQL Workbench) OpenAI API 金鑰 LINE Bot API 金鑰 工具: MySQL...
Mac Django 建置環境
macOS 上下載並安裝 Django 教學指南(不使用虛擬環境,並加入 PATH 教學)步驟 1:確認安裝 Homebrew(可選)如果你還沒有安裝 Homebrew,可以按照以下指令來安裝。Homebrew 是 macOS 上的包管理器,方便你安裝和管理軟件: 打開「終端機」(Terminal),輸入以下指令來安裝 Homebrew:1/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" 等待 Homebrew 安裝完成,然後更新 Homebrew:1brew update 步驟 2:安裝 Python 3 確認是否已安裝 Python 3:1python3 --version 如果沒有安裝或版本過舊,可以使用 Homebrew 安裝最新的 Python 3:1brew install python3 步驟 3:安裝 Django 確保 Python 3 已經安裝,然後使用 pip3 安裝...
在 Mac vscode 中使用 Code Runner 和 C/C++ 插件來編譯與執行 C++ 程式
今天在學校老師突然派一個 c++作業,結果我電腦還沒裝 C++環境,讀檔案一直出問題,我決定今天好好寫一個 Mac 在 vscode 中執行 C++ 的教學。 在 Mac 上使用 VSCode 的 Code Runner 和 C/C++ 插件來編譯與執行 C++ 程式這個教學將詳細說明如何使用 VSCode 的 Code Runner 和 C/C++ 插件 來編譯與執行 C++ 程式,並介紹幾個常見功能按鈕的說明。 1. 確認安裝 Clang 編譯器補充:在使用 Clang 之前,必須確保你的 Mac 上已經安裝了 Xcode 或 Xcode Command Line Tools,因為 Clang 是隨 Xcode 一起安裝的。 確認是否已安裝 Xcode 打開 終端(Terminal)並輸入以下指令來確認 Xcode 是否已安裝:如果已經安裝,你會看到提示訊息告訴你 Xcode Command Line Tools 已經安裝。如果尚未安裝,系統將自動引導你進行安裝。1xcode-select --install 檢查 Clang 版本 打開...
Line Bot 與 Chatgpt應用 02 - 執行程式
Line Bot 和 GPT 實戰教學本教學將帶領你使用 Replit 平台運行由 GPT 支援的 Line Bot,並逐步指導你如何設定和執行這個 Python 程式碼。 步驟 1: 進入 Replit 並複製專案首先,進入 Replit 上的大神已經寫好的 Python 程式碼頁面。 點擊以下連結,進入 Replit 上的專案頁面並進行複製 (fork) 到你自己的工作區: GPTDev_LINE_bot - Replit 步驟 2: 複製專案到自己的工作區點擊 “Fork” 按鈕將專案複製到你的 Replit 帳戶中: 步驟 3: 設定環境變數在 Replit 的專案設定中,輸入以下三個環境變數: LINE_SECRET:你在 Line 開發者後台取得的 Secret LINE_TOKEN:你在 Line 開發者後台取得的 Token OPENAI_API_KEY:你從 OpenAI 取得的 API Key 如圖所示: 提示: 如果你不知道如何取得這三個值,請私訊我以獲得幫助。 步驟 4: 執行專案設定好環境變數後,點擊 “Run”...
Wordpress 動態選單
步驟 1:連結對應選單1$menu_items = wp_get_nav_menu_items('首頁選單'); 這段程式碼使用了 wp_get_nav_menu_items() 函數,傳入選單的名稱 '首頁選單',該名稱對應的是你在 WordPress 後台中設定的選單名稱。 👇🏻 後台長這樣 👇🏻 範例:假設你在 WordPress 後台創建了一個選單,並命名為「首頁選單」,該選單中包含以下項目: Home Services Web Development App Development About Us Contact wp_get_nav_menu_items() 會返回這些選單項目作為一個物件陣列,每個項目包含: ID:選單項目的唯一標識符 title:選單項目的標題(如 “Home”, “Services”) url:選單項目的連結 menu_item_parent:父選單項目的 ID(若是頂層項目則為 0) 步驟...
本地專案推送至Bitbucket遠端存放庫
我的工作常常會使用到 bitbucket 遠端存放庫,前幾次使用不是很熟悉,因此我將步驟記錄下來讓我對 git 語法更熟悉: 12345678910111213# 將本地專案推送到 Bitbucket 的教學文案本文介紹了如何將本地的 Git 專案推送到 Bitbucket,包括每個步驟執行指令後的顯示內容。---## 步驟 1: 初始化本地 Git 儲存庫如果尚未初始化 Git 儲存庫,首先進入專案目錄並執行以下命令:```bashgit init``` 顯示內容1Initialized empty Git repository in /Users/zhuang/iavogue/.git/ 步驟 2: 新增 Bitbucket 遠端倉庫將 Bitbucket 的儲存庫 URL 新增到本地專案的 Git 遠端倉庫列表中: 1git remote add origin git@bitbucket.org:iambigd/wp-iavogue.git 檢查遠端倉庫是否正確添加: 12bashgit remote -v 顯示內容12origin ...