• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Włączanie pętli przyciskiem na stronie we Flasku

Object Storage Arubacloud
0 głosów
482 wizyt
pytanie zadane 7 listopada 2017 w Python przez wndll Nowicjusz (120 p.)

Cześć! Mam mały problem natury myślowej - chciałbym przyciskiem na witrynie lokalnej (działającej we Flasku) włączyć nieskończoną pętlę, a drugim przyciskiem na podstronie ją wyłączyć.

Chcę mieć przycisk na stronie głównej, który rozpocznie pętlę i przeniesie mnie na podstronę (informująca o rozpoczęciu pętli) na której z kolei będzie przycisk, który zatrzyma pętlę (i przeniesie mnie z powrotem do strony głównej).

Na Internecie jest dużo poradników opartych na flask-wtform i to chyba jedyne słuszne rozwiązanie, ale za chiny nie potrafię zrozumieć działania tego rozszerzenia i relacji między zmiennymi i kodem w plikach. Istotne strzępki kodu dodaję poniżej.

Chciałbym, żeby najzwyczajniej w świecie, po naciśnięciu przycisku na stronie głównej - jakaś zmienna zmieniła wartość na np. '1' albo 'True', a po naciśnięciu przycisku na podstronie ta zmienna zmieniła wartość na np. '0' albo 'False'.

Kolejny problemem z jakim się borykam to wykorzystanie threading w pythonie, ponieważ chcę, żeby naciśnięcie przycisku podczas działania pętli ją zakończyło, więc potrzebuję wątku, który by "nasłuchiwał" czy wartość zmieniła się z '1' na '0'. Nie wiem jak to zaimplementować.

Z góry dzięki za pomoc

@app.route('/', methods=['GET', 'POST'])
def index():

    #
    form = StartLoop()
    if form.validate_on_submit():
        print("It works!")
    return render_template("home.html", form=form)


@app.route('/startLoop', methods=['GET', 'POST'])
def startLoop():
    return render_template("startLoop.html")

class StartLoop(Form):
    startLoop = BooleanField()
    stopLoop = BooleanField()
    submit = SubmitField()

 

<form method="POST" action="/startLoop">
                <button class="btn btn-primary btn-lg btn-success" type="submit" name="startLoop" value="{{1}}">start Loop</button>
            </form>
<form method="POST" action="/">
                <button class="btn btn-primary btn-lg btn-danger" type="submit" name="stopLoop" value="{{0}}">Stop Loop</button>
            </form>

 

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
1 odpowiedź 532 wizyt
pytanie zadane 31 sierpnia 2016 w Python przez jestembotem Użytkownik (610 p.)
0 głosów
0 odpowiedzi 252 wizyt
pytanie zadane 14 października 2017 w Python przez Bohdan Nowicjusz (120 p.)
+1 głos
0 odpowiedzi 199 wizyt
pytanie zadane 28 listopada 2021 w Python przez Hajpa Użytkownik (880 p.)

92,568 zapytań

141,424 odpowiedzi

319,630 komentarzy

61,956 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...