簡體   English   中英

如何在管理更新方法中從 Django 查詢集中提取 id?

[英]How do I extract id from Django queryset in admin update method?

當我在 Django Admin 中更新對象時,我需要獲取它的id

我試過get()並使用 vars(queryset) 打印出查詢集,但我似乎無法隔離我需要的值。

我試圖迭代它,但無濟於事。 我應該提到我使用的是 MPTT,所以它是一個TreeQuerySet 但我認為這不重要。

在 admin.py 中:

class JokeAdmin(MPTTModelAdmin, ImportExportModelAdmin):

    ...   ...


    def reviewed_approved(self, request, queryset):
        queryset.update(reviewed=True, approved=True)
        print(vars(queryset))

這是輸出:

{'model': class 'blog.models.Joke','_db': None,'_hints': {},'query': <django.db.models.sql.query.Query object at 0x033404D0>, '_result_cache': None, '_sticky_filter': False, '_for_write': True, '_prefetch_related_lookups': (), '_prefetch_done': False, '_known_rel
ated_objects': {}, '_iterable_class': class 'django.db.models.query.ModelIterable', '_fields': None}

我意識到我可以從請求中獲取對象 ID:

        id = request.POST.get('_selected_action')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM