python-common-code/example/example_duck_model.py
2025-10-26 17:10:27 +09:00

30 lines
885 B
Python

import sys
import os
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__),"..", "src")))
from typing import ClassVar, Optional
from lib.custom_logger import get_logger
logger = get_logger(level=10)
from dataclasses import dataclass
from models.duck_base_model import DuckBaseModel
from providers.duck_db_provider import DuckDBProvider
@dataclass
class NewsModel(DuckBaseModel):
title: str
file_glob: ClassVar[str] = "./data_science/data/y=2025/news/news_*.csv"
default_order_by: ClassVar[Optional[str]] = "pub_date DESC"
def example_duckdb_model():
logger.info("Starting example_duckdb_model function.")
provider = DuckDBProvider()
provider.connect()
NewsModel.provider = provider
news = NewsModel.first()
logger.info(f"Total news: {news if news else 'No news found'}")
# example_duckdb_model()