Django 產生QR_CODE

YH Lin
3 min readDec 1, 2020

--

今天的目標是要利用Django 產生QR CODE,類似下面的圖

開始我們需要先引用QR_code 的套件

在Terminal 中執行 pip install django-qr-code

接下來我們在models.py 中加上一個PersonalTask,

在models.py 中加上一個generate_qr_code的方法,是方便我們在html中透過

<a href={{personal_task.generate_qr_code }}>...</a>

的方式建立超連結

因此我們也需要在urls.py 中來解析’app:generate_qr_code’。當html 中呼叫

<a href={{personal_task.generate_qr_code  }}

時,會透過PersonalTask models 的generate_qr_code方法reverse 路徑,最後呼叫views.generate_qr_code

path('generate_qr_code/<int:id>/<slug:task>', views.generate_qr_code, name='generate_qr_code'),

在views.py 的generate_qr_code方法中,利用get_current_site(request)找到host的位置,組合成一個url,並送到html中處理。

在html中透過就可以產生qr_code囉。

<img class="card-img" src="{% qr_url_from_text  url  %}" alt="Hello World!">

https://gist.github.com/JackyCafe/7ea3d926c53cb1d96b6769a8125ea2c6

在主urls.py 中記得加上

path('qr_code/', include('qr_code.urls', namespace="qr_code"))
,

不然就會出現

--

--

No responses yet