3

Flask を使用してアプリケーションを開発します。管理インターフェイスには Postgres db (psycop2)、SQLAlchemy、Flask-Admin を使用しています。そして、私は問題を抱えていて、解決策を見つけることができません。記事とタグテーブルの間に多対多の関係があることは明らかです。アーティセルにタグを追加しようとすると(またはその逆)、Flask-Admin インターフェイスで正常に動作します。しかし、オブジェクトのように表示されるため、表示がひどく、正しいタグを選択することはできません。ここに画像の説明を入力

それは私のモデル クラスのインスタンスであるためです。しかし、そのモデルの単一フィールドの値のみをここに表示するにはどうすればよいでしょうか? 私は本当にそれを行う方法がわかりません。管理インターフェースにそのような「フォームフィールド」のパラメータはありますか? 何も見つかりません。誰かが解決策を知っていることを願っています。

ご協力いただきありがとうございます!

4

2 に答える 2

5

__unicode__モデルにメソッドを定義する必要があります。独自の命名規則に従うことができるアプリケーションでは、すべてのモデルの基本クラスに次のものを配置し、必要に応じてオーバーライドします。

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)
                    )
                )
于 2014-01-29T06:33:01.340 に答える