Форум сайта python.su
Здравствуйте уважаемые форумчане! Возможно тема упомяналась, однако ничего похожего не нашел. Суть проблемы: Есть Raspberry pi. Есть датчик температуры DS18b20, который подключен к нему. Скрипт python обращается к шине 1w и записывает результат в файл /tmp/temperature/temperature.txt Сделано это для уменьшение количества обращений к флэшке. Файл имеет разрешение на чтение для всех, соответственно views.py может его прочитать и отобразить на странице. Но при обновлении значения изменений на странице не происходит, до того момента, пока не перезагрузишь apache2. Переменная соответственно называется my_temper_garaj. Остальные две температуры присваиваются в файле views.py и передаются в index.html без косяков.
Вот собственно views.py:
from django.shortcuts import render
import datetime
# Create your views here.
# Мои настройки по температуре
#####################################
from django.core.files import File
f = open('/tmp/temperature/temperature.txt', 'r')
my_temper_garaj = f.read()
f.close()
#####################################
def my_list(request):
now = datetime.datetime.now()
my_time_new = now.strftime("%H:%M")
my_date_new = now.strftime("%d-%m-%Y")
#my_temper_garaj = 10 #старое статическое значение температуры
my_temper_ulica = 11
my_temper_dom = 12
return render(request, 'main/index.html', context={'my_time': my_time_new, 'my_date': my_date_new, 'temper_garaj': my_temper_garaj, 'temper_ulica': my_temper_ulica, 'temper_dom': my_temper_dom})
<p>
<ul class="list-group">
<li class="list-group-item">
<span class="badge">{{ temper_garaj }}</span>
Гараж
</li>
</ul>
</p>
Отредактировано zloy_ej (Янв. 5, 2019 10:43:29)
Офлайн
А с чего она у тебя должна поменяться? Ты её один раз в переменную прочитал и всё. Если хочешь что бы она каждый раз менялась, то считывай значение из файла в представлении my_list.
Офлайн
Действительно, благодарю за помощь! Тему можно закрывать
Отредактировано zloy_ej (Янв. 11, 2019 13:44:43)
Офлайн