In below HTML template of Wagtail,
<h1>{{ page.title }}</h1>
    <div>{{ page.intro }}</div>
    {% for post in page.get_children %}
        <h2><a href="{% pageurl post %}">{{ post.title }}</a></h2>
        <p>{{ post.first_published_at }}</p>
        <p>{{ post.owner }}</p>
        {% if post.specific.rncategory.all.count %}
            {% for ctgy in post.specific.rncategory.all %}
                <a href="{% routablepageurl page "post_by_category" ctgy.slug %}">{{ctgy.category.name}}</a>
            {% endfor %}
        {% endif %}
        {% for tg in post.specific.rntags.all %}
            <button type="button">{{tg.tag.name}}</button>
        {% endfor %}
    {% endfor %}
Q1: Why we use page.get_children & post.specific.rncategory.all.count instead of page.get_children() and post.specific.rncategory.all().count() which are expected to be corrected ?
And It is the other way around (page.get_children is invalid) in the PDB debug interaction session.
(Pdb++) obj.get_children()[0]
<Page: Detail>
(Pdb++) obj.get_children()[0].specific.rncategory.all.count
*** AttributeError: 'function' object has no attribute 'count'
(Pdb++) obj.get_children()[0].specific.rncategory.all
<bound method BaseManager.all of <modelcluster.fields.create_deferring_foreign_related_manager.<locals>.DeferringRelatedManager object at 0x7f7076003790>>
(Pdb++) obj.get_children()[0].specific.rncategory.all()
<QuerySet []>
(Pdb++) obj.get_children()[1].specific.rncategory.all()
<QuerySet [<Link_PostDetail_Category: Link_PostDetail_Category object (2)>]>
(Pdb++) obj.get_children()[1].specific.rncategory.all().count()
1
(Pdb++) obj.get_children()[0].specific.rncategory.all().count()
0
(Pdb++)