この記事について
| 環境 | Python + line-bot-sdk-python |
|---|---|
| 目的 | クイックリプライのpostbackでdisplayTextをトーク画面に表示させる |
| 結果 | display_text(スネークケース)に直したら表示された |
つまずきポイント要約
- APIリファレンスはキャメルケース、pythonのSDKはスネークケース
- エラーにはならず、単に表示されないだけなので気づきにくい
事象
通常、クイックリプライボタンにpostbackイベントを設置して、displayTextを記述すれば、ユーザーがクイックリプライボタンをタップしたときにトーク画面にdisplayTextの内容が表示される。しかし表示されない事象が発生。
views.py
postback=PostbackAction(
label="みかん",
data="fruits",
displayText="みかんが押された",
),
原因
LINEのMessaging APIリファレンスはキャメルケース(displayText)だが、line-bot-sdk-pythonのパラメータ名はスネークケース(display_text)。リファレンスの表記のままSDKに書いても無視される。
対処
displayText を display_textと書き直すとok
postback=PostbackAction(
label="みかん",
data="fruits",
display_text="みかんが押された",
),
