Fixes in fastadmin
This commit is contained in:
parent
a8fa6aad34
commit
9f07fc1ea2
2 changed files with 16 additions and 37 deletions
|
|
@ -16,6 +16,7 @@ if hasattr(config, 'yes_static'):
|
||||||
|
|
||||||
# apps={'admin': ['paramecio2.modules.admin', 'admin_app']}
|
# apps={'admin': ['paramecio2.modules.admin', 'admin_app']}
|
||||||
|
|
||||||
|
# Get all apps, load.
|
||||||
|
|
||||||
for name_module, module_app in config.apps.items():
|
for name_module, module_app in config.apps.items():
|
||||||
|
|
||||||
|
|
@ -23,15 +24,26 @@ for name_module, module_app in config.apps.items():
|
||||||
app_module=module_app[1]
|
app_module=module_app[1]
|
||||||
path_module=module_app[2]
|
path_module=module_app[2]
|
||||||
|
|
||||||
controller_path=import_module(module)
|
controller_mod=import_module(module)
|
||||||
media_path=controller_path.__file__.replace('__init__.py', 'media')
|
|
||||||
#print(media_path)
|
base_path=controller_mod.__file__.replace('__init__.py', '')
|
||||||
|
|
||||||
|
media_path=base_path+'media/'
|
||||||
|
|
||||||
|
dir_controllers=os.listdir(base_path)
|
||||||
|
|
||||||
|
for controller in dir_controllers:
|
||||||
|
|
||||||
|
if controller.find('.py')!=-1 and controller.find('__')==-1:
|
||||||
|
|
||||||
|
subcontroller_path=module+'.'+controller.replace('.py', '')
|
||||||
|
subcontroller_mod=import_module(subcontroller_path)
|
||||||
|
|
||||||
if os.path.isfile(media_path):
|
if os.path.isfile(media_path):
|
||||||
if yes_static:
|
if yes_static:
|
||||||
app.mount("/mediafrom/"+name_app, StaticFiles(directory=media_path), name="static_"+name_app)
|
app.mount("/mediafrom/"+name_app, StaticFiles(directory=media_path), name="static_"+name_app)
|
||||||
|
|
||||||
fast_app=getattr(controller_path, app_module)
|
fast_app=getattr(controller_mod, app_module)
|
||||||
|
|
||||||
app.mount(path_module, fast_app)
|
app.mount(path_module, fast_app)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,6 @@
|
||||||
from fastapi import FastAPI, Cookie, Request
|
from fastapi import FastAPI, Cookie, Request
|
||||||
from fastapi.responses import HTMLResponse, RedirectResponse
|
from fastapi.responses import HTMLResponse, RedirectResponse
|
||||||
from typing import Annotated
|
from typing import Annotated
|
||||||
from itsdangerous.url_safe import URLSafeTimedSerializer
|
|
||||||
#from paramecio2.libraries.urls import make_url
|
|
||||||
from settings import config
|
from settings import config
|
||||||
from parameciofast.fast import app
|
from parameciofast.fast import app
|
||||||
from parameciofast.libraries.session import ParamecioSession
|
from parameciofast.libraries.session import ParamecioSession
|
||||||
|
|
@ -19,34 +17,3 @@ url_app=config.apps['admin'][2]
|
||||||
admin_app=FastAPI(docs_url="/docs", openapi_url="/docs/openapi.json", title='Paramecio Admin', version='0.9')
|
admin_app=FastAPI(docs_url="/docs", openapi_url="/docs/openapi.json", title='Paramecio Admin', version='0.9')
|
||||||
|
|
||||||
admin_app.add_middleware(SessionMiddleware, secret_key=config.secret_key, max_age=None, session_cookie=cookie_name, path=url_app)
|
admin_app.add_middleware(SessionMiddleware, secret_key=config.secret_key, max_age=None, session_cookie=cookie_name, path=url_app)
|
||||||
|
|
||||||
"""
|
|
||||||
@admin_app.middleware("http")
|
|
||||||
async def session(request: Request, call_next):
|
|
||||||
|
|
||||||
#request.state.session=
|
|
||||||
if request.url.path!='{}login'.format(url_app):
|
|
||||||
pass
|
|
||||||
|
|
||||||
response=await call_next(request)
|
|
||||||
return response
|
|
||||||
"""
|
|
||||||
|
|
||||||
@admin_app.get('/', response_class=HTMLResponse)
|
|
||||||
def home_admin(request: Request, paramecio_session: Annotated[str | None, Cookie(description='Cookie for validate into the admin site')] = None):
|
|
||||||
"""
|
|
||||||
if not paramecio_session:
|
|
||||||
return RedirectResponse(app.url_path_for('login_admin'))
|
|
||||||
"""
|
|
||||||
if not request.session.get('login_admin', None):
|
|
||||||
return RedirectResponse(app.url_path_for('login_admin'))
|
|
||||||
|
|
||||||
return "Hello world!"
|
|
||||||
|
|
||||||
|
|
||||||
@admin_app.get('/login', response_class=HTMLResponse)
|
|
||||||
def login_admin():
|
|
||||||
|
|
||||||
return "Login"
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue