Update: UserCreate installation model to fix parameter runtime errors.

This commit is contained in:
Abdullah Mustapha 2024-01-02 01:22:20 +01:00
parent b07b4500fa
commit 6d76a6f19b
4 changed files with 14 additions and 17 deletions

View file

@ -1,5 +1,5 @@
from typing import Optional from typing import Optional
from pydantic import BaseModel from pydantic import BaseModel, EmailStr
from sqlmodel import Field, SQLModel from sqlmodel import Field, SQLModel
from src.db.roles import RoleRead from src.db.roles import RoleRead
@ -10,12 +10,14 @@ class UserBase(SQLModel):
username: str username: str
first_name: str first_name: str
last_name: str last_name: str
email: str email: EmailStr
avatar_image: Optional[str] = "" avatar_image: Optional[str] = ""
bio: Optional[str] = "" bio: Optional[str] = ""
class UserCreate(UserBase): class UserCreate(UserBase):
first_name: str = ""
last_name: str = ""
password: str password: str

View file

@ -41,33 +41,30 @@ async def api_get_latest_install_instance(
@router.post("/default_elements") @router.post("/default_elements")
async def api_install_def_elements( async def api_install_def_elements(
request: Request,
db_session=Depends(get_db_session), db_session=Depends(get_db_session),
): ):
elements = await install_default_elements(request, {}, db_session) elements = await install_default_elements(db_session)
return elements return elements
@router.post("/org") @router.post("/org")
async def api_install_org( async def api_install_org(
request: Request,
org: OrganizationCreate, org: OrganizationCreate,
db_session=Depends(get_db_session), db_session=Depends(get_db_session),
): ):
organization = await install_create_organization(request, org, db_session) organization = await install_create_organization(org, db_session)
return organization return organization
@router.post("/user") @router.post("/user")
async def api_install_user( async def api_install_user(
request: Request,
data: UserCreate, data: UserCreate,
org_slug: str, org_slug: str,
db_session=Depends(get_db_session), db_session=Depends(get_db_session),
): ):
user = await install_create_organization_user(request, data, org_slug, db_session) user = await install_create_organization_user(data, org_slug, db_session)
return user return user

View file

@ -61,14 +61,12 @@ function AccountCreation() {
username: '', username: '',
}, },
validate, validate,
onSubmit: values => { onSubmit: async values => {
let finalvalues = { ...values, org_slug: install.data[1].slug }
let finalvalueswithoutpasswords = { ...values, password: '', confirmPassword: '', org_slug: install.data[1].slug } let finalvalueswithoutpasswords = { ...values, password: '', confirmPassword: '', org_slug: install.data[1].slug }
let install_data = { ...install.data, 3: finalvalues }
let install_data_without_passwords = { ...install.data, 3: finalvalueswithoutpasswords } let install_data_without_passwords = { ...install.data, 3: finalvalueswithoutpasswords }
updateInstall({ ...install_data_without_passwords }, 4) await updateInstall({ ...install_data_without_passwords }, 4)
createNewUserInstall(finalvalues) await createNewUserInstall({email:values.email,username:values.username,password:values.password},install.data[1].slug)
// await 2 seconds // await 2 seconds
setTimeout(() => { setTimeout(() => {

View file

@ -13,8 +13,8 @@ export async function createNewOrgInstall(body: any) {
return res; return res;
} }
export async function createNewUserInstall(body: any) { export async function createNewUserInstall(body: any,org_slug:string) {
const result = await fetch(`${getAPIUrl()}install/user?org_slug=${body.org_slug}`, RequestBody("POST", body, null)); const result = await fetch(`${getAPIUrl()}install/user?org_slug=${org_slug}`, RequestBody("POST", body, null));
const res = await errorHandling(result); const res = await errorHandling(result);
return res; return res;
} }