Flask-Admin Many-to-Many field display

后端 未结 2 1117
半阙折子戏
半阙折子戏 2021-01-01 06:31

I develop an application using Flask. I use Postgres db (psycop2), SQLAlchemy and Flask-Admin for admin interface. And I got a problem and can\'t find a solution. I have man

相关标签:
2条回答
  • 2021-01-01 07:19

    Adding this for people like me that stumble upon this answer, it didn't work for me, but

    def __str__(self):
        return self.name
    

    worked just fine ;)

    0 讨论(0)
  • You need to define __unicode__ method on your models. In an application where I am able to follow my own naming conventions, I might put the following in the base class for all my models and override where appropriate:

    class MyModel(db.Model):
        """ Base class provides the __repr__ so that each model has short type. """
        __abstract__ = True
    
        def __unicode__(self):
            # attrs = db.class_mapper(self.__class__).column_attrs
            attrs = db.class_mapper(self.__class__).attrs # show also relationships
            if 'name' in attrs:
                return self.name
            elif 'code' in attrs:
                return self.code
            else:
                return "<%s(%s)>" % (self.__class__.__name__,
                    ', '.join('%s=%r' % (k.key, getattr(self, k.key))
                        for k in sorted(attrs)
                        )
                    )
    
    0 讨论(0)
提交回复
热议问题