我需要預先填充帶有數據庫(數據集)值的表單字段。 問題是我不知道如何將參數發送到窗體類。Python Flask:從另一個函數發送表單類參數以預先填充默認值
forms.py
# coding: utf-8
from db import produtosalca as produtos ##dataset imports db['table']
from flask_wtf import FlaskForm
from wtforms import TextField, BooleanField, SubmitField, TextAreaField, validators, ValidationError
class ProductForm(FlaskForm,produto):
descricao = TextField("Nome", default=produto.Descricao)
classificacaoFiscal = TextField("NCM", default=produto.ClassificacaoFiscal)
mva = TextField("MVA",default=produto.MVA)
app.py
# coding: utf-8
import os
from werkzeug import secure_filename
from flask import (
Flask, request, send_from_directory, render_template, current_app, flash
)
from db import produtosalca
from forms import ContactForm, ProductForm
app = Flask("alcax")
PROJECT_ROOT = os.path.abspath(os.path.dirname(__file__))
app.config['MEDIA_ROOT'] = os.path.join(PROJECT_ROOT, 'media_files')
app.secret_key = 'development key'
@app.route('/productform', methods=['GET','POST'])
def productform(product):
form = ProductForm(request.form,product) ## here i was gonna send product
if request.method == 'POST':
'posted'
elif request.method == 'GET':
return render_template('productform.html', form=form.content())
好一切,我試圖讓我堅強的錯誤
'produto' is not defined
我在PY初學者。一直在研究整夜。提前致謝。
的進口produtosalca爲''produtos,但你使用它作爲'produto'與無S。將'produtos'重命名爲'produto' –
嗨@odaialghamdi thx輸入。我忘了刪除這部分。即使我使用相同的名稱,它也不起作用,因爲它說AttributeError:'表'對象沒有'Descricao'屬性。 produtosalca是一個數據庫表。 –
您的班級'table'沒有'Descricao'作爲班級的屬性 –