Exemplo n.º 1
0
class AdminResource(Model):
    label = "Admin"
    model = Admin
    icon = "fas fa-user"
    page_pre_title = "admin list"
    page_title = "admin model"
    filters = [
        filters.Search(
            name="username",
            label="Name",
            search_mode="contains",
            placeholder="Search for username",
        ),
        filters.Date(name="created_at", label="CreatedAt"),
    ]
    fields = [
        "id",
        "username",
        Field(
            name="password",
            label="Password",
            display=displays.InputOnly(),
            input_=inputs.Password(),
        ),
        Field(name="email", label="Email", input_=inputs.Email()),
        Field(
            name="avatar",
            label="Avatar",
            display=displays.Image(width="40"),
            input_=inputs.Image(null=True, upload=upload),
        ),
        "created_at",
    ]

    async def get_toolbar_actions(self,
                                  request: Request) -> List[ToolbarAction]:
        return []

    async def cell_attributes(self, request: Request, obj: dict,
                              field: Field) -> dict:
        if field.name == "id":
            return {"class": "bg-danger text-white"}
        return await super().cell_attributes(request, obj, field)

    async def get_actions(self, request: Request) -> List[Action]:
        return []

    async def get_bulk_actions(self, request: Request) -> List[Action]:
        return []
Exemplo n.º 2
0
 class ProductResource(Model):
     label = "Product"
     model = Product
     filters = [
         filters.Enum(enum=enums.ProductType, name="type", label="ProductType"),
         filters.Datetime(name="created_at", label="CreatedAt"),
     ]
     fields = [
         "id",
         "name",
         "view_num",
         "sort",
         "is_reviewed",
         "type",
         Field(name="image", label="Image", display=displays.Image(width="40")),
         "body",
         "created_at",
     ]