Как использовать ссылку back_populates Brand_id в WTForm?Python

Программы на Python
Anonymous
Как использовать ссылку back_populates Brand_id в WTForm?

Сообщение Anonymous »

Я создал связь между двумя моделями — «Добавить товар» и «Бренд». Я хочу добавить элементы в форму AddProducts, однако понятия не имею, как добавить Brand_id в эту форму AddProducts. Пожалуйста, помогите мне разобраться с этим.
class Addproduct(db.Model):
#__tablename__ = 'addproduct'
id:Mapped[int] = mapped_column(Integer,primary_key=True)
name:Mapped[str] = mapped_column(String(80),nullable=False, unique=True)
price:Mapped[int] = mapped_column(Integer,nullable=False)
brand_id:Mapped[int]= mapped_column(Integer, db.ForeignKey('brand.id'),nullable=False)
brand = relationship('Brand', back_populates="product")

class Brand(db.Model):
__tablename__ = 'brand'
id:Mapped[int] = mapped_column(Integer,primary_key=True)
name:Mapped[str] = mapped_column(String(30),nullable=False, unique=True)
product = relationship('Addproduct', back_populates="brand")

class AddProducts(FlaskForm):
name = StringField('Name',validators=[DataRequired()])
price = IntegerField('Price',validators=[DataRequired()])
brands = QuerySelectField('Add a brand', query_factory=brandchoices)
Submit = SubmitField('Add Product')

Я хочу знать, как добавить этот идентификатор бренда в следующей форме:
@app.route('/addproduct', methods=['POST','GET'])
def addproduct():
form = AddProducts()
if form.validate_on_submit():
name = form.name.data
price = form.price.data
brand =
addprod = Addproduct(
name=name, price=price)
db.session.add(addprod)
db.session.commit()
flash(f'The product {name} has been added.')
return render_template('products/addproduct.html', form=form)


Подробнее здесь: https://stackoverflow.com/questions/784 ... -in-wtform

Вернуться в «Python»