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

Flask - jak wysłać dane z tabeli do kontrolera?

VPS Starter Arubacloud
0 głosów
366 wizyt
pytanie zadane 10 czerwca 2021 w Python przez manjaro Nałogowiec (37,390 p.)
Mam w tabeli kilka elementów <select>

W jaki sposób pobrać ich wartości w jednym wierszu i przekazać do kontrolera?

Formularz odpada bo on dotyczy całej tabeli a nie poszczególnych wieszy.

Pewnie można to zrobić z pomocą JS ale czy jest możliwość zrobić to w samym flasku?
komentarz 10 czerwca 2021 przez adrian17 Ekspert (344,100 p.)
Możesz konkretniej pokazać?

Masz formularz który chcesz wysłać POSTem, ale niektóre jego pola chcesz... osobno wysłać POSTem?
komentarz 10 czerwca 2021 przez manjaro Nałogowiec (37,390 p.)

Mam taką tabelę i chcę wykonać akcję poprzez Button Zatwierdź. Nie musi to być postem może być poprzez link.

komentarz 10 czerwca 2021 przez adrian17 Ekspert (344,100 p.)
A to czemu cała tabelka jest u Ciebie <form>em? Bo właśnie by miało sens, żeby każdy wiersz miał osobnego forma.
komentarz 10 czerwca 2021 przez manjaro Nałogowiec (37,390 p.)
Ale tu nie ma w ogóle forma. Wiem że miało by to sens aby każdy wiersz miał ale to jest operacja niedozwolona. Nie da się robić formularzy dla osobnych wierszy w tabeli.
komentarz 10 czerwca 2021 przez Wiciorny Ekspert (269,120 p.)
a wysyłając wiersz za każdym razem podmieniasz cały zasób, wszystkie wartości czy za każdym razem dodajesz nową wartość do kolekcji danych  ?
komentarz 10 czerwca 2021 przez manjaro Nałogowiec (37,390 p.)
Po wysłaniu wiersza do bazy powinien on zniknąć z tego widoku.

Chyba po prostu zrobię to inaczej. Wyrzucę te selektory i zamiast Zatwierdź dam edytuj. Otworzę wiersz na innej formatce i tam zastosuję selektory i FORM. Trochę to dziadowskie ale będzie działać.
komentarz 10 czerwca 2021 przez adrian17 Ekspert (344,100 p.)
Nie no, "usuń" jest trywialne, bo to po prostu button-link do jakiegoś delete?id=123
komentarz 10 czerwca 2021 przez manjaro Nałogowiec (37,390 p.)
No tak "Usuń" działa bez problemu tak jak napisałeś.

Ale "Zatwierdź" potrzebuje poza id wartości tych selektorów. Jakbym miał jakoś wartości to bym zrobił link zatwierdz/id/sel1/sel2
komentarz 10 czerwca 2021 przez Wiciorny Ekspert (269,120 p.)
edycja 10 czerwca 2021 przez Wiciorny

ukryć po stronie HTML- wartości w inputach typu hidden, i je mapować mozna z pomocą flaska spokojnie bo przychodzą w request.

Albo jak wspomniane było umieścić każdy Tr- jako form , tylko użyć forma w postaci inputa ukrytego https://stackoverflow.com/questions/1249688/html-is-it-possible-to-have-a-form-tag-in-each-table-row-in-a-xhtml-valid-way

 

<table>
    <tr>
        <td>Id</td>
        <td>Name</td>
        <td>Description</td>
        <td>&nbsp;</td>
    </tr>
    <tr>
        <td><form id="form1"><input type="hidden" name="id" value="1" /></form></td>
        <td><input form="form1" type="text" name="name" value="Name" /></td>
        <td><input form="form1" type="text" name="description" value="Description" /></td>
        <td><input form="form1" type="submit" value="Save" /></td>
    </tr>
    <tr>
        <td><form id="form2"><input type="hidden" name="id" value="1" /></form></td>
        <td><input form="form2" type="text" name="name" value="Name" /></td>
        <td><input form="form2" type="text" name="description" value="Description" /></td>
        <td><input form="form2" type="submit" value="Save" /></td>
    </tr>
</table>

 

komentarz 11 czerwca 2021 przez manjaro Nałogowiec (37,390 p.)

@Wiciorny,  no nie czytałeś komentarzy. Też tak na początku kombinowałem. Ukryć w inpucie id i wysłać formularzem id i selektory. Ale nie jest możliwe tworzenie formularzy dla każdego wiersza tabeli. Poczytaj

 

komentarz 11 czerwca 2021 przez Wiciorny Ekspert (269,120 p.)
wiem ze nie mozliwe bo to tez napisałem, dodałem o tym ze możesz zamarkować forma jako atrybut pola

1 odpowiedź

0 głosów
odpowiedź 10 czerwca 2021 przez Wiciorny Ekspert (269,120 p.)
Sprawdź tutaj w pełni we flasku jak odwołać się do np html-owego forma, może Ci się przyda
https://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-iii-web-forms

Jeśli generalnie dalej upieramy się przy fakcie rezygnacji z formu, co jest moim zdaniem też bez sensu, starasz się zachować pewną semantykę okej- pisać tylko flask po stronie servera, ale korzystasz z widzę KLIENT_SERVER api, a jednak żądania wysyłasz bez formów co jest imo sztuką dla sztuki
niemniej jednak tutaj jeszcze jest pare kwestii w zakresie zbierania danych z zadania bez formu, tylko zakres twojego HTML musisz dostosować odpowiednio
https://stackoverflow.com/questions/10434599/get-the-data-received-in-a-flask-request/16664376#16664376

Podobne pytania

0 głosów
1 odpowiedź 121 wizyt
pytanie zadane 13 października 2021 w Python przez MatiZeb Obywatel (1,160 p.)
0 głosów
1 odpowiedź 261 wizyt
pytanie zadane 24 lutego 2021 w Python przez Klmn3 Nowicjusz (120 p.)
0 głosów
1 odpowiedź 525 wizyt
pytanie zadane 7 lipca 2019 w Python przez Ziito Obywatel (1,110 p.)

92,453 zapytań

141,262 odpowiedzi

319,087 komentarzy

61,854 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

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 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!

...