I am new to flask. I want to show drop down list of types(Type Model) in a form which used to get delivery information. I created following two models and the view in flask. Still I am not getting a drop down list. How do I show those values in a drop down list using following models.
class Types(Model):
_tablename_ = 'types'
id = Column(Integer, primary_key=True)
type = Column(String(100),nullable=False)
types = relationship('Delivery', backref='deliver_type', lazy= 'dynamic')
def __repr__(self):
return self.name
class Delivery(Model):
_tablename_ = 'delivery'
id = Column(Integer, primary_key=True)
name = Column(String(250), nullable=False)
type_id = Column(Integer, ForeignKey('types.id'))
And the view is,
class DeliveryModelView(SupersetModelView, DeleteMixin):
datamodel = SQLAInterface(models.Delivery)
list_columns = ['name','type']
search_columns = ['name','type']
edit_columns = ['name','type']
add_columns = edit_columns
label_columns = {
'name': _("Name"),
'type': _("Type"),
}
What do I need to add to the view or if you can give me some examples or tutuorials, I would really appreciate that.(Using Jinja templates)
I manged to fix that by changing Models only. No need to change the view.I changed the models as follows. Added type_id = Column(Integer, ForeignKey('types.id'), nullable=False), type = relationship('Types')
to Delivery Method and remove relationship in Type model. For more info
class Types(Model):
_tablename_ = 'types'
id = Column(Integer, primary_key=True)
name = Column(String(100),nullable=False)
def __repr__(self):
return self.name
class Delivery(Model):
_tablename_ = 'delivery'
id = Column(Integer, primary_key=True)
name = Column(String(250), nullable=False)
type_id = Column(Integer, ForeignKey('types.id'), nullable=False)
type = relationship('Types')