betty.url package

Submodules

Module contents

Provide a URL generation API.

class betty.url.LocalizedUrlGenerator[source]

Bases: _UrlGenerator

Generate URLs for localizable resources.

abstract generate(resource: Any, media_type: str, *, absolute: bool = False, locale: str | Locale | None = None) str[source]

Generate a localized URL for a localizable resource.

Raises:

UnsupportedResource

class betty.url.StaticUrlGenerator[source]

Bases: _UrlGenerator

Generate URLs for static (non-localizable) resources.

abstract generate(resource: Any, *, absolute: bool = False) str[source]

Generate a static URL for a static resource.

Raises:

UnsupportedResource

exception betty.url.UnsupportedResource[source]

Bases: RuntimeError

Raised when a URL generator cannot generate a URL for a resource.

These are preventable by checking betty.url.LocalizedUrlGenerator.supports() or betty.url.StaticUrlGenerator.supports() first.

classmethod new(resource: Any) Self[source]

Create a new instance.

betty.url.generate_from_path(path: str, *, base_url: str, root_path: str, locales: Mapping[str, str], clean_urls: bool, absolute: bool = False, locale: Localey | None = None) str[source]

Generate a full URL from a public path.