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)
Нельзя.
JRazor: Спасибо, видимо мне надо собрать какое-то минималистское приложение со sqlite и выложить на гитхаб для эксперимента. У меня, естественно, выборка. И во всех ваших ссылках, там речь идет о вставке в базу. А у нас цель другая, выдернуть данные из базы и вставить в html форму.
А причем здесь пользователь? Это обычая выборка из базы данных, где dc_id это номер из базы, а dc_person - это id юзера в базе. По этим значениям делается выборка из базы, где множество полей, значения которых надо подставить в форму.
Ну я пытаюсь сделать так:
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)
Но, что-то не алё. Данные туда не подставляются.
Я бы хотел сделать это в цикле, крутануть в цикле то что пришло из базы и передать эти значения в качестве form.item.default = from.db.
По ссылке не понятно как это сделать.
Я наверное, неправильно выразился.
Представьте у вас есть форма, у которой множество полей. Можно их все заполнять с нуля. Каждое поле. Вы заполнили каждое поле и нажали на кнопку "Отправить". И все ваши значения попали в базу.
Идем дальше.
Мы делаем кнопку "Скопировать", нажимаем на нее. И форма должна заполнится всеми теми значениями, которые лежат у нас в базе. Дальше пользователь, там что-нибудь изменяет и отправляет по новой.
Вот такая цель.
Roman Kitaev: Я прошу прощение, если где-то мои слова показались тебе обидными или грубыми.
И я посмотрел, твои прежние ответы они все касаются django, на сколько ты компетентен во flask?
Платят за то, чтобы было написано на flask. Когда будут платить за джанго, тогда о нем и поговорим.
И вопрос не в лени, а в повторах строк когда. Я переписываю приложение у которого 5000 маршрутов требуют авторизации.
И придется потратить 5000 строк на то, чтобы написать @login_required. Вот что мне не нравится.
И еще 1000 строк уйдет на то, чтобы написать @admin_required.
Хотя, без использования модуля flask-login я могу разрулить это через @app.before_request в несколько строк.
Я изменил свой вопрос и вставил этот хук.
Большое спасибо за помощь!