Я наверное, неправильно выразился.
Представьте у вас есть форма, у которой множество полей. Можно их все заполнять с нуля. Каждое поле. Вы заполнили каждое поле и нажали на кнопку "Отправить". И все ваши значения попали в базу.
Идем дальше.
Мы делаем кнопку "Скопировать", нажимаем на нее. И форма должна заполнится всеми теми значениями, которые лежат у нас в базе. Дальше пользователь, там что-нибудь изменяет и отправляет по новой.
Вот такая цель.
Я бы хотел сделать это в цикле, крутануть в цикле то что пришло из базы и передать эти значения в качестве form.item.default = from.db.
По ссылке не понятно как это сделать.
pcdesign: Просто импортируете данные, которые вам нужны и подставляете вверх вместо "ваши данные". И все. Это то, что вы хотите сделать. Можете погуглить другие примеры по запросу WTFORMS OBJ
Ну я пытаюсь сделать так:
n = DraftCur.query.filter_by(dc_person=g.user_id, dc_id=dc_id)
form = DraftCurForm(obj=n)
return render_template("user_draft_cur_add.html", form=form)
Но, что-то не алё. Данные туда не подставляются.
А причем здесь пользователь? Это обычая выборка из базы данных, где dc_id это номер из базы, а dc_person - это id юзера в базе. По этим значениям делается выборка из базы, где множество полей, значения которых надо подставить в форму.
pcdesign: Короче, я так понимаю я зря тут распинаюсь. Наверное приходит список, вот он и не подставляется. Должна быть выборка и прийти что-то одно, а не список. Если это счет, то все данные по счету. Нужно сделать, как я сказал и все подставится. Ошибка, скорее всего, в запросе.
pcdesign: Выборку! Получаешь из базы (я так понял, там какой-то счет), к примеру, один счет со всеми полями и подгружаешь его. Не 2, не 3, не 10, а 1. Его поля должны быть идентичны полям в форме. И все.
JRazor: Спасибо, видимо мне надо собрать какое-то минималистское приложение со sqlite и выложить на гитхаб для эксперимента. У меня, естественно, выборка. И во всех ваших ссылках, там речь идет о вставке в базу. А у нас цель другая, выдернуть данные из базы и вставить в html форму.
pcdesign: Не надо ничего собирать, просто поработай над запросом, чтобы он возвращал не список, а что-то одно (то есть одну строку), соответствующее полям и все. Если это выдергивается из разных таблиц или разных строк, то тогда надо задействовать логику или усложнять запросы.
JRazor: Спасибо. Утро вечера мудренее. Вроде заработало вот так:
##############################
obj = DraftCur.query.get(dc_id)
form = DraftCurForm(obj=obj)
##############################
Все html-формы отлично заполняются данными из базы.
Правда, я сталкиваюсь, что любой юзер сможет смотреть записи другого юзера.
Провал в безопасности, короче. Так как написать
obj = DraftCur.query.filter_by(dc_person=g.user_id).get(dc_id)
Нельзя.