The Basics

Learn how to define searchable columns for your Djing resources.

Searchable Columns

To define which resource fields are searchable, you may assign an array of database columns to the search property or searchable_columns method of your resource class. This array includes the id column by default:

djing_admin/app/Djing/User.py
from djing.core.Fields.ID import ID
from djing.core.Fields.Text import Text
from djing.core.Http.Requests.DjingRequest import DjingRequest
from djing_admin.app.Djing.Resource import Resource as DjingResource

class User(DjingResource):
    search = [
        'id', 'username',
    ]
    
    # ...

    def fields(self, request: DjingRequest):
        return [
            ID.make("ID").sortable(),
            Text.make("Username").sortable()
        ]

You can also define searchable columns using searchable_columns method instead of search property

djing_admin/app/Djing/User.py
from djing.core.Fields.ID import ID
from djing.core.Fields.Text import Text
from djing.core.Http.Requests.DjingRequest import DjingRequest
from djing_admin.app.Djing.Resource import Resource as DjingResource

class User(DjingResource):
    # ...

    @classmethod
    def searchable_columns(cls):
        return [
            'id', 'username',
        ]

    def fields(self, request: DjingRequest):
        return [
            ID.make("ID").sortable(),
            Text.make("Username").sortable()
        ]

Last updated