# codeSphere --- # 專題說明 我的專題是一個整合系統,有部落格/論壇/爬蟲eeclass產生個人行事曆/youtube下載影片至本地端/註冊和登出登入系統,名字做codeSphere,希望可以變成一個中央大學的codding交流和提供各種方便小程序的平台。 # 題目發想 首先因為老師在上課時有提到前端:html/css/javascipt,後端:python的flask,爬蟲:selenium/beautifulsoup...技術,經過生思熟慮,我認為製作一個部落格可以將這些實際運用和練習,但只有部落格有點單調,所以後來融合了論壇和eeclass爬蟲等...其他功能,而這些功能的靈感也源自我日常得需求,像是eeclass爬蟲可以節省我慢慢將每一個功課和活動填到google calendar的時間,而且我一直很想試試看自己架設一個屬於自己的部落格。 # 使用技術 - 前端:html/css/javascipt, - 後端:python的flask - 資料庫:sqlite # 實作成果 ## 頁面 - entrancePage:最初的登入頁面  - registerPage:註冊頁面,密碼同時存在大小寫/特殊符號/數字  - profilePage:可以些改user的個人資料(包含 自我介紹 名字 性別 個人網站連結)  - homePage:有navigate bar可以導覽至個頁面  - postPage:顯示資料庫裡的特定貼文(包含標題/留言/按讚數/創建時間......),且使用者可以即時留言和按讚  - createPage:建立貼文(支援markdown)  - displayPage:顯示所有在資料庫的貼文,並附有search bar,點下想看的post即會direct到該postPage  - calendar:將爬蟲後所有使用者的科目和作業顯示在行事曆上,並有filter可以過濾  - yt:提供youtube連結和下載的本地端路徑即可完成下載  - forumPage:顯示論壇的所有討論區 ## 資料庫 - 資料表:  - 有很多張table,這裡列兩張作範例 - 用戶登入系統 - 儲存資料:用戶id、用戶名稱、密碼、電子郵件、出生日、身分別。 - 資料屬性:以用戶id 為primary key,用戶必須設定名稱及密碼,因此為not null;身分則由系統配發 ,預設為user ,admin 等身分別則由管理員發放;郵件及出生日可以為null,由使用者決定。 -  - 文章發布系統 - 儲存資料:文章id、發文者id、文章標題、內容、是否公開(visible),是否已刪除(deleted)、發布時間、刪除時間、更新時間 - 資料屬性:Primary key 為文章id,發文者id 則為foreign key,連接至table users。Visible 預設為1,所有用戶皆可查看,0 的話則只有發文者可看見 deleted 預設為0,刪除後則變為1,用來支持「軟刪除」的運作(將數據標示不可用,但未從資料庫中刪除)。系統自動記錄文章的發布、更新及刪除時間。 -  # 遇到困難 我遇到了很多困難,像是之前沒有寫過網頁的前後端,幾乎是從0開始學,我先寫前端,但後來發現我的前端架構沒有為之後串後端和資料庫做預想,使得在接後端和資料庫的過程要修改不少,浪費了許多時間,這些問題除了看老師的講義學習,我也常直接問chatgpt,請它幫我debug,些改code和給我一些研發的想法。 ## 目標與期望 - 目標: 1.將頁面美化 2.優化資料庫的查詢 3.搭配上框架 - 期望結果: 1.可以讓中央大學的各位在此自由的討論分享 2.增加越來越多好用的小程序給使用者(ex:eeclass爬蟲) 3.開源,讓大家一起發展這個網頁
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up