1

Mongoengine で Flask-Admin を使用すると、送信された投稿のリストのモデル ビューをカスタマイズしようとすると行き詰まります。各投稿に送信されたコメントの数を表示するために、各投稿 (リストの行に対応する) にセルを追加するという考え方です。

getクラスに次のメソッドを追加しました。

class PostView(ModelView):

   def get(self):
       posts = Post.objects.all()
       return render_template('admin/model/list.html', posts=posts)

list.html には以下が含まれます。

<td>
    {% for d in posts %}
        {% with total=d.comments | length %}
            {{ total }}
        {% endwith %}
    {% endfor %}
<td>

表のセルは空のままです。代わりに何をすればよいですか? 前もって感謝します !

4

1 に答える 1

3

get独自のビューを作成しようとしていると理解していますが、 にメソッドが見つかりませんModelView

とにかくflask-admin柔軟な継承構造を持っています。だからあなたはちょうど試すことができます:

class PostView(ModelView):
    list_template = 'admin/model/posts-list.html'

templates/admin/model/posts-list.html :

{% extends 'admin/model/list.html' %}

{% block list_header %}
    {{ super() }}
    <th>Comments count</th>
{% endblock %}

{% block list_row %}
    {{ super() }}
    <td>{{ row.comments|length }}</td>
{% endblock %}
于 2013-07-14T19:32:42.413 に答える