fix: use relative imports for python files

This commit is contained in:
2025-07-23 22:47:55 +00:00
parent 3eb1522525
commit 2ce76243b8
7 changed files with 21 additions and 22 deletions

View File

@@ -2,7 +2,7 @@ from databases import Database
from sqlalchemy import create_engine, MetaData from sqlalchemy import create_engine, MetaData
from sqlalchemy.orm import declarative_base from sqlalchemy.orm import declarative_base
from backend.config import settings from ..config import settings
# for Alembic migrations and sync operations # for Alembic migrations and sync operations
engine = create_engine(settings.database_url) engine = create_engine(settings.database_url)

View File

@@ -1,9 +1,9 @@
from fastapi import FastAPI from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware from fastapi.middleware.cors import CORSMiddleware
from backend.config import settings from .config import settings
from backend.db import database, Base, engine from .db import database, Base, engine
from backend.routes import shortener_router from .routes import shortener_router
app = FastAPI() app = FastAPI()

View File

@@ -1,6 +1,6 @@
from sqlalchemy import Column, Integer, String from sqlalchemy import Column, Integer, String
from backend.db.database import Base from ..db.database import Base
class Url(Base): class Url(Base):
__tablename__ = "urls" __tablename__ = "urls"

View File

@@ -1,11 +1,11 @@
from fastapi import APIRouter, HTTPException from fastapi import APIRouter, HTTPException
from fastapi.responses import RedirectResponse from fastapi.responses import RedirectResponse
from backend.db import database from ..db import database
from backend.exceptions import ShortcodeNotFound, ShortcodeConflict from ..exceptions import ShortcodeNotFound, ShortcodeConflict
from backend.utils import encoder from ..utils import encoder
from backend.schemas import UrlPayload from ..schemas import UrlPayload
from backend.services import UrlService from ..services import UrlService
router = APIRouter() router = APIRouter()
url_service = UrlService(db=database) url_service = UrlService(db=database)

View File

@@ -1,9 +1,9 @@
from sqlalchemy import select, insert from sqlalchemy import select, insert
from sqlalchemy.exc import IntegrityError from sqlalchemy.exc import IntegrityError
from backend.utils import encoder from ..utils import encoder
from backend.models import Url from ..models import Url
from backend.exceptions import ShortcodeConflict, ShortcodeNotFound from ..exceptions import ShortcodeConflict, ShortcodeNotFound
class UrlService: class UrlService:
def __init__(self, db): def __init__(self, db):

View File

@@ -1,6 +1,6 @@
from hashids import Hashids from hashids import Hashids
from backend.config import settings from ..config import settings
class ShortCodeEncoder: class ShortCodeEncoder:
def __init__(self, salt=None, alphabet=None, min_length=6): def __init__(self, salt=None, alphabet=None, min_length=6):

View File

@@ -18,7 +18,7 @@ while True:
db_user = "minxa" db_user = "minxa"
db_password = secrets.token_urlsafe(16) db_password = secrets.token_urlsafe(16)
db_name = "minxadb" db_name = "minxadb"
db_host = "minxa-db" db_host = "db"
db_port = 5432 db_port = 5432
hashids_salt = secrets.token_urlsafe(32) hashids_salt = secrets.token_urlsafe(32)
@@ -53,10 +53,9 @@ frontend_env_path.write_text(frontend_env)
print(f"✅ frontend/.env written") print(f"✅ frontend/.env written")
# === Generate docker-compose.generated.yml === # # === Generate docker-compose.generated.yml === #
compose_yml = f"""version: "3.9" compose_yml = f"""
services: services:
minxa-db: db:
image: postgres:16 image: postgres:16
environment: environment:
POSTGRES_USER: {db_user} POSTGRES_USER: {db_user}
@@ -72,26 +71,26 @@ services:
networks: networks:
- appnet - appnet
minxa-backend: backend:
build: build:
context: ./backend context: ./backend
env_file: env_file:
- ./backend/.env - ./backend/.env
depends_on: depends_on:
minxa-db: db:
condition: service_healthy condition: service_healthy
ports: ports:
- "8000:8000" - "8000:8000"
networks: networks:
- appnet - appnet
minxa-frontend: frontend:
build: build:
context: ./frontend context: ./frontend
env_file: env_file:
- ./frontend/.env - ./frontend/.env
depends_on: depends_on:
- minxa-backend - backend
ports: ports:
- "3000:80" - "3000:80"
networks: networks: