Skip to content

Commit 627e30b

Browse files
committed
Merge remote-tracking branch 'origin/main' into main
2 parents 5c1cbb1 + b0b7eb2 commit 627e30b

File tree

5 files changed

+53
-4
lines changed

5 files changed

+53
-4
lines changed

fast_tmp/site/base.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
from tortoise.queryset import QuerySet
88

99
from fast_tmp.amis.forms import Column, ColumnInline, Control, ControlEnum, QuickEdit
10-
from fast_tmp.amis.page import Page
1110
from fast_tmp.amis.response import AmisStructError
1211
from fast_tmp.exceptions import NotFoundError
1312
from fast_tmp.responses import BaseRes, ListDataWithPage
@@ -197,7 +196,7 @@ class RegisterRouter:
197196
_name: str
198197
_prefix: str
199198

200-
async def get_app_page(self, request: Request) -> Page:
199+
async def get_app_page(self, request: Request) -> dict:
201200
raise AttributeError("need write")
202201

203202
def __init__(self, prefix: str, name: str):

fast_tmp/site/field.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -614,7 +614,6 @@ def create_column(
614614
# todo 以后考虑创建更新的control分离
615615
class Password(StrControl):
616616
_control_type = ControlEnum.input_password
617-
_update_control = None
618617

619618
async def get_value(self, request: Request, obj: Model) -> Any:
620619
return None

tests/test_example/app.py

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,23 @@
11
import os
22

3+
from starlette.requests import Request
4+
35
os.environ.setdefault("FASTAPI_SETTINGS_MODULE", "test_example.settings")
6+
47
from test_example.admin import AuthorModel, BookModel, FieldTestingModel
8+
from test_example.page import UserSelfInfo
59
from tortoise.contrib.fastapi import register_tortoise
610

711
from fast_tmp.admin.register import register_static_service
812
from fast_tmp.conf import settings
913
from fast_tmp.factory import create_app
1014
from fast_tmp.models import User
15+
from fast_tmp.responses import BaseRes
1116
from fast_tmp.site import register_model_site
1217

13-
register_model_site({"fieldtesting": [FieldTestingModel(), BookModel(), AuthorModel()]})
18+
register_model_site(
19+
{"fieldtesting": [FieldTestingModel(), BookModel(), AuthorModel(), UserSelfInfo()]}
20+
)
1421
app = create_app()
1522
app.title = "test_example"
1623

@@ -26,6 +33,12 @@ async def create_user():
2633
await user.save()
2734

2835

36+
@app.post("/form-test")
37+
async def test_form(request: Request):
38+
print(await request.json())
39+
return BaseRes()
40+
41+
2942
register_tortoise(app, config=settings.TORTOISE_ORM, generate_schemas=True)
3043
if settings.DEBUG:
3144
register_static_service(app)
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
"""
2+
测试插件功能,支持自己写入规则
3+
"""
4+
from starlette.requests import Request
5+
6+
from fast_tmp.amis.forms import Control, Form
7+
from fast_tmp.amis.page import Page
8+
from fast_tmp.site.base import RegisterRouter
9+
10+
11+
class MarkdownItem(Control):
12+
langeuage: str
13+
type = "editor"
14+
15+
16+
class UserSelfInfo(RegisterRouter):
17+
def __init__(self):
18+
super().__init__("info", "info")
19+
20+
async def get_app_page(self, request: Request) -> dict:
21+
return Page(
22+
title="userselfinfo",
23+
body=[
24+
Form(
25+
name="form",
26+
body=[MarkdownItem(langeuage="markdown", name="markdown", label="markdown")],
27+
api="/form-test",
28+
)
29+
],
30+
).dict(exclude_none=True)

tests/test_plugin.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
"""
2+
测试插件功能,支持自己写入规则
3+
"""
4+
from fast_tmp.amis.forms import Control
5+
6+
7+
class MarkdownItem(Control):
8+
""""""

0 commit comments

Comments
 (0)