今天开始要正式开发网站,这次我要挑战的是建置一个小说连载追踪系统,其相关说明如下:
背景:因为我习惯等小说完结後才一次阅读,对於感兴趣但尚未完结的作品,需要定期主动去确认目前连载进度,故希望透过系统可以将此流程自动化。
需求:
建立网站,提供追踪功能,由使用者输入小说网址,如为支援网站则将此书放入追踪清单。
系统定期自动使用爬虫技术,取得以下资讯:
追踪清单页面根据当前使用者显示追踪项目的以下资讯:
具有登入功能
接下来,我将根据MDN Web Docs上面的教程来建立网站。
因前日建置的虚拟环境路径不太符合我个人使用习惯,且前日的情境是使用「命令提示字元,为了更接近日常开发,故这次改为从VSCode上运行虚拟环境。
virtualenv my_django_project
环境建立完成後,VSCode会侦测到有新的虚拟环境,提示视窗选择「是」。
关闭目前的终端机(终端机右上方的垃圾桶图式)。
开启命令选择区 (ctrl + shift + p),选择「Python: 选择直译器」,选择刚刚建立的虚拟环境。
这时我遇到了一个错误讯息,当时忘了截图,但大概是说「xxxx.ps1未经数位签署,无法载入」。
解决方法:使用系统管理员身份打开Windows PowerShell,输入以下指令设定PowerShell的执行原则:
set-executionpolicy remotesigned
python manage.py startapp track
应用程序建立好後,需在专案内进行注册,这样专案运行时才会将应用程序纳入。注意注册流程需在应用程序建立完成後才可进行,在建立应用程序阶段如应用程序名称已被注册,会发生错误。
注册方法:进入专案资料夹下的settings.py (上图中的bookhelper/settings.py),於INSTALLED_APPS下新增「track.apps.TrackConfig」。
同样在专案资料夹下的settings.py,可以设定资料库,这边设定的是MySQL。
中间试着运行测试网站,发现无法载入MySQL模组,需要安装MySql client。
原本要使用pip安装mysql-python,但似乎这个套件有版本支援性的问题,故改用mysqlclient。
pip install mysqlclient
专案资料夹下urls.py,新增以下设定:
urlpatterns += [
path('track/', include('track.urls')),
path('', RedirectView.as_view(url='/track/')),
]
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
作用:
因应用程序建立时底下没有提供urls.py,故须由我们手动建立。
from django.urls import path
from . import views
urlpatterns = [
]
<<: TypeScript 能手养成之旅 Day 6 物件型别-基础物件型别
>>: [ Day 07 ] Class Component
在昨天的文章中,讲到了类别基础用法包含了「宣告」、「建构子」及「实体化」,今天会继续说明Dart c...
初心 写code开始,义大利面到框架,後端碰到前端。为什麽到现在才写Vue2呢?最主要的想法,是想把...
前言 目标:串接虾皮订单、标签资讯,目前串接虾皮 OpenAPI 2.0 版本,串接手册 串接步骤:...
客制化, Customization 在 NetSuite 内提到 客制化 通常表示的是, 流程变更...
前言 「重复」页面的画面已经完成了,接着实作功能吧! 功能图: 实作 首先建立一个变数,用来储存Ce...