__package__ = 'archivebox.legacy.storage' from typing import List, Iterator from ..schema import Link from ..util import enforce_types from ..config import setup_django ### Main Links Index @enforce_types def parse_sql_main_index() -> Iterator[Link]: setup_django() from core.models import Page return ( page.as_json(*Page.keys) for page in Page.objects.all() ) @enforce_types def write_sql_main_index(links: List[Link]) -> None: setup_django() from core.models import Page for link in links: info = {k: v for k, v in link._asdict().items() if k in Page.keys} Page.objects.update_or_create(url=link.url, defaults=info)