Mentions légales du service

Skip to content
Snippets Groups Projects
Commit 47eb7183 authored by Bruno Guillon's avatar Bruno Guillon
Browse files

Merge branch 'master' into features/helpers

parents 46988c56 4d940d36
Branches
No related tags found
No related merge requests found
Pipeline #999835 failed
......@@ -32,6 +32,7 @@ type-checking:
- medium
image: "$CI_REGISTRY_IMAGE/qbcontainer"
script:
- find -name '__pycache__' -type d -exec rm {} +
- python3 -m mypy --install-types --non-interactive querybuilder/
test:
......
......@@ -320,25 +320,26 @@ class Field:
def to_named_column(
self: NamedColumn | ColumnSpec,
relation_name: Optional[str] = None,
schema_name: Optional[str] = None,
relation_name: str | None | _MISSING_TYPE = MISSING,
schema_name: str | None | _MISSING_TYPE = MISSING,
) -> NamedColumn:
assert self.name
assert self.sqltype
assert (
not self.relation_name
or not relation_name
or self.relation_name == relation_name
)
assert (
not self.schema_name or not schema_name or self.schema_name == schema_name
)
return NamedColumn(
self.sqltype,
self.name,
self.relation_name or relation_name,
self.schema_name or schema_name,
)
if relation_name is MISSING:
relation_name = self.relation_name
elif relation_name is None:
schema_name = None
relation_name = cast(Optional[str], relation_name)
if schema_name is MISSING:
schema_name = self.schema_name
schema_name = cast(Optional[str], schema_name)
if relation_name:
assert not self.relation_name or self.relation_name == relation_name
if schema_name:
assert relation_name
assert not self.schema_name or self.schema_name == schema_name
return NamedColumn(self.sqltype, self.name, relation_name, schema_name)
@classmethod
def _resolve_str_spec(
......@@ -506,7 +507,7 @@ class Field:
) -> Optional[qb.atoms.constraints.ColumnCheck]:
check: Optional[str | Column | qb.atoms.constraints.ColumnCheck | tuple | dict]
if callable(self.check):
check = self.check(self.to_named_column(), relation)
check = self.check(self.to_named_column(relation_name=None), rel)
else:
check = self.check
if check is None:
......@@ -540,6 +541,7 @@ class Field:
qb.atoms.constraints.ColumnDefault,
]
if callable(self.default):
# TODO: when is a callable default useful?
default = self.default(self.to_named_column())
else:
default = self.default
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment