iT邦幫忙

2025 iThome 鐵人賽

DAY 2
0
生成式 AI

一起來打造 PTT 文章智慧問答系統!系列 第 2

【Day 02】環境建置與必要工具安裝 - PyCharm、Django

  • 分享至 

  • xImage
  •  

Hi大家好,
這是我參加 iT 邦幫忙鐵人賽的第 1 次挑戰,這次的主題聚焦在結合 Python 爬蟲、RAG(檢索增強生成)與 AI,打造一套 PTT 文章智慧問答系統。在過程中,我會依照每天進度上傳程式碼到 GitHub ,方便大家參考學習。也歡迎留言或來信討論,我的信箱是 gerryearth@gmail.com


在進行系統開發之前,我們需要先建立完整的開發環境。本日重點將聚焦於 PyCharm 開發環境設置,並介紹專案中所使用的核心技術:Django


本日目標

  1. 建立 PyCharm 開發環境
  2. 了解 Django 的核心概念並建立專案

PyCharm 開發環境介紹

在本系列中,我將使用 PyCharm Professional 作為主要開發工具,只要學校信箱可收信即可免費申辦。PyCharm 是一款功能強大的 Python IDE,不僅支援 Django 開發框架,還內建 資料庫管理、Git 整合、單元測試工具 等多項功能,非常適合本專案使用。

注意: PyCharm 會自動檢測系統中的 Python 版本,並協助建立虛擬環境。
在新專案設置頁面中,建議選擇 New Virtualenv Environment 並選擇 Python 3.11 作為解譯器。


Django 是什麼?

Django 是一個基於 Python 的 Web 框架,可以快速建立功能完善的網站。它將複雜的功能封裝成套件和方法,開發者只需引用這些方法即可,無需撰寫複雜的 Python 程式碼。

Django 採用 MVT(Model-Template-View) 架構:

  • Model: 定義資料庫資料表,負責數據操作。
  • Template: 設計訪問者看到的網頁外觀,為 HTML 檔案。
  • View: 處理 HttpRequest 和 HttpResponse,決定顯示的內容。

Model:資料庫操作

  • 使用 ORM(Object-Relational Mapping) 來處理數據庫,不需直接撰寫 SQL 語法。
  • 每個 Model 對應一個資料表,定義於 models.py 中。

Template:設計網頁外觀

  • Template 是 .html 檔案,存放於 templates 資料夾中。
  • 它負責將資料渲染為 HTML,呈現給訪問者。

View:處理請求與回應

  • View 是一個個函數,定義於 views.py 中。
  • 它負責接收請求、處理邏輯,並回傳對應的模板頁面。

URLs:路由設定

  • urls.py 用於將 URL 與 View 對應起來。
  • 在訪問網址時,Django 根據 URL 決定調用哪個 View。

Django 運作流程

  1. 訪問者在瀏覽器輸入網址。
  2. Django 根據 urls.py 尋找對應的 View。
  3. View 根據請求調用對應的 Model 進行數據處理。
  4. View 將數據傳遞給 Template。
  5. Template 將資料渲染成 HTML,回傳給訪問者。
  6. 瀏覽器顯示完整網頁。

建立 Django 專案

這裡用 PyCharm 可以直接建立 Python Django 專案,省略安裝 Python 與 Django 的步驟,還會自動建立 Django 專案。
https://ithelp.ithome.com.tw/upload/images/20250801/20172834XU68NY1XEV.png
使用此方法建立 Django 專案後,專案結構將如下:
https://ithelp.ithome.com.tw/upload/images/20250801/201728349g7A1irIz8.png

  • 我把專案名稱叫做 ptt_rag_dev (可自行決定名稱)
  • .venv 是本專案的虛擬環境,PyCharm 右下角會顯示虛擬環境 Python3.11(ptt_rag_dev)
  • ptt_rag_dev 是 Django project 資料夾,之後會修改 settings.py(專案設定檔) 與 urls.py(路由設定)

在終端機(terminal)中輸入以下指令,測試 Django 專案:

python manage.py runserver

瀏覽器訪問 https://127.0.0.1:8000 ,若能看到以下 Django 預設的歡迎頁面,恭喜你完成 Django web 的架設了!

https://ithelp.ithome.com.tw/upload/images/20250801/20172834Kn4HzOGq2g.png


明天【Day03】環境建置與必要工具安裝 - MariaDB,我們將進一步了解專案中所使用的核心技術: MariaDB!


上一篇
【Day 01】一起來打造 PTT 文章智慧問答系統!
下一篇
【Day 03】環境建置與必要工具安裝 - MariaDB
系列文
一起來打造 PTT 文章智慧問答系統!14
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言