私のアプリケーションは、2秒ごとにRFIDリーダーに接続してデータを受信する必要があるため、djangoフレームワークで開発されました。views.pyの関連する行は次のとおりです。
HOST = '192.168.0.1'
PORT = 50007
soc = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
soc.settimeout(2)
soc.connect((HOST, PORT))
soc.send('tag.db.scan_tags(100)\r\n')
datum = soc.recv(128)
if datum.find("ok") > -1:
soc.send('tag.read_id()\r\n')
data = soc.recv(8192)
RFID リーダーがそのフィールドに RFID タグを見つけた場合、アプリケーションは受信したデータを{{ data }}としてテンプレートにレンダリングします。この問題は、フィールドにタグがないか、タグを読み取ることができない場合に発生します。{{ data }}変数はページに何も表示しません。
読み取り可能な最後のデータをアプリケーションで表示できるようにしたいと考えています。新しいデータが来ない場合は、最新のものを表示します。新しいデータが来た場合にのみ、データが変更されます。これにより、アプリケーションがより安定します。
何か提案はありますか?どうもありがとうございました。