1. 程式人生 > >stark元件之過濾操作【模仿Django的admin】

stark元件之過濾操作【模仿Django的admin】

一、先看下django的admin是如何實現過濾操作

 首先在配置類中頂一個list_filter的列表,把要過濾的欄位作為元素寫i進去就可以了

class testbook(admin.ModelAdmin):

    # 第一步,定義一個函式,必須要接受三個引數
    def test_action(self,request,queryset):
        """

        :param request:
        :param queryset:這個就是需要批量操作的queryset物件
        :return:
        """
        print(queryset)

    # 第二步,為這個函式物件賦值一個新的屬性
    test_action.short_description = "測試批量操作的函式"


    # 第三步,將函式物件新增到actions這個列表中
    actions = [test_action]

    list_filter = ["auther","publish"]

  

重點是這裡

 

最後我們看下頁面的效果

 

 

下面我們重點看下點選過濾的元素的url

先點選一下作者2

然後在點選一下出版社2

二、下面在我們自己是如何實現類似Django的admin的過濾操作