Django admin 사용자 정의 함수 오류 보고, TypeError:postcount() missing 1 required positional argument: 'obj'

1069 단어 django
django를 공부하고 개발할 때 이 문제에 부딪혔습니다. 원본:
@admin.register(Category)
class CategoryAdmin(admin.ModelAdmin):
    def post_count(self, obj):
        return obj.post_set.count()

    post_count.short_description = '    '

    list_display = ('name', 'status', 'is_nav', 'created_time', post_count)
    fields = ('name', 'status', 'is_nav')

    def save_model(self, request, obj, form, change):
        obj.owner = request.user
        return super(CategoryAdmin, self).save_model(request, obj, form, change)

그리고 틀린 것은 글자의 뜻으로 볼 때 매개 변수가 하나 없어진 것이다.django의 사용자 정의 함수는 바로 이렇다.
list_display = ('name','status','is nav','created time', post count)에서 내가 쓴 postcount는 속성이지 문자가 아니라 다른 매개 변수는 문자열입니다. 이것을 바꾸면 성공할 수 있을지 궁금합니다.
list_display = ('name', 'status', 'is_nav', 'created_time', 'post_count')

뒤에 수색하러 가자.대략적인 뜻은 여기django가 반사를 사용하고 문자열에서 상응하는 속성이나 방법을 찾았는데 원래 반사는 여기서 사용되어 시야를 넓혔다.

좋은 웹페이지 즐겨찾기