Найти - Пользователи
Полная версия: Flask - динамическое отображение страницы
Начало » Python для новичков » Flask - динамическое отображение страницы
1
dremdem
Продолжаю задавать детсадовские вопросы :

Есть страница на Flask, которая отображает данные из таблицы MySql.
Возвращаю это хозяйство с помощью SQLAlchemy.

Хочется сделать таким образом, что при выборе определенной строки в этой таблице, на этой же странице отобразилось содержание второй таблицы связанной с первой по ключу.
При этом не хочется перерисовывать табличку, а хочется использовать модальное окно.
То есть тыкнули в строку мастер таблицы, отобразилось модальное окно зависимой детальной таблицы, а вот там уже нажали некий sumbit и отправили данные скрипту методом POST.

Наверняка есть куча библиотек на эту тему, только опять сходу не нашел.

Заранее спасибо !
Firik
ajax например
dremdem
Firik
ajax например
Да, спасибо, я видел статью про ajax
Вот эту

Но казалась, что такая крутая штука как Flask умеет сама это делать. Вопрос только как?

Наткнулся вот на Это например.
Очень похоже на то что мне надо, только вот понять работает оно или нет ))
4kpt_IV
dremdem
fwtforms-alchemy для построения форм по модели. Без ajax будет банальная перезагрузка страницы.
dremdem
4kpt_IV
банальная перезагрузка страницы.
Понял.
Пошел читать про ajax
dremdem
Вроде добился.
Правда не до конца, но смысл уже понятен.

Итак кому интересно:

Вот рабочий пример с ajax: Github
Вот рабочий пример, как на основании данных с сервера с помощью jquery формировать содержимое таблицы “на лету” StackOver

Один момент: Я напоролся на него по абсолютному незнанию всего и вся. Идентификатор таблицы должен быть без знака #. А вот обращение к нему должно быть как раз через #.

То есть буквально:


HTML:
 <table id="det_table" class="table table-bordered table-striped">
JS:
$("#det_table").append(html);

4kpt_IV
Ой ей ей.
Забиваем пока болт на фласк и читаем по js или jquery…
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB