压缩了Flask-Admin内联可编辑列表下拉菜单(看不到菜单项)

时间:2020-10-29 21:22:26

标签: python flask flask-sqlalchemy flask-admin

一张图片值一千字。这是我要在Flask-Admin中修复的问题:

Flask-Admin inline editing can't see dropdown many contents

我正在尝试通过将字段包含在模型视图的column_editable_list中来编辑列表视图中的字段。该字段的值通过外键关系来自另一个表,因此用户从下拉菜单中选择一个值,该值不可见,我想是因为视图中的列太多,所以它被压缩了吗?

有人知道如何解决此问题而又不会从列表视图中删除其他列吗?

这是我的模型视图(为了简化StackOverflow,我删除了很多列):

class StructureView(MyModelView):
    """Flask-Admin view for Structure model (public.structures table)"""

    can_create = True 
    can_edit = True

    column_list = (
        'structure', 
        'uno', 
        'egas', 
        'power_unit', 
    )
    column_sortable_list = column_list
    column_editable_list = column_list

    column_labels = dict(
        structure="Master Structure Serial", 
        uno="UNOGAS UNO",
        egas="UNOGAS EGAS",
        power_unit="Power Unit Serial", 
    )

这是基础的SQLAlchemy模型:


class Structure(db.Model):
    """Create a public.structures table representation"""
    __tablename__ = 'structures'

    id = db.Column(INTEGER, primary_key=True)
    structure = db.Column(INTEGER, nullable=False, unique=True)

    egas_id = db.Column(INTEGER, db.ForeignKey('public.egas.id'))
    egas = relationship('Egas', back_populates='structures') # one-to-many

    uno_id = db.Column(INTEGER, db.ForeignKey('public.uno.id'))
    uno = relationship('Uno', back_populates='structures') # one-to-many

    power_unit_id = db.Column(INTEGER, db.ForeignKey('public.power_units.id'))
    power_unit = relationship('PowerUnit', back_populates='structures') # one-to-many

    def __repr__(self):
        return str(self.structure)

谢谢! 肖恩

1 个答案:

答案 0 :(得分:0)

我解决了自定义CSS的问题。 Flask-Admin使用Select2作为表单字段。

.select2-choices {
  min-width: 200px;
}

showing results of setting min-width: 200px in CSS