Simplify the instantiation of metadata list
This commit is contained in:
parent
2b37934503
commit
53d1603e3e
@ -1,10 +1,7 @@
|
|||||||
from .instructions_list import BrickInstructionsList
|
from .instructions_list import BrickInstructionsList
|
||||||
from .retired_list import BrickRetiredList
|
from .retired_list import BrickRetiredList
|
||||||
from .set_owner import BrickSetOwner
|
|
||||||
from .set_owner_list import BrickSetOwnerList
|
from .set_owner_list import BrickSetOwnerList
|
||||||
from .set_status import BrickSetStatus
|
|
||||||
from .set_status_list import BrickSetStatusList
|
from .set_status_list import BrickSetStatusList
|
||||||
from .set_tag import BrickSetTag
|
|
||||||
from .set_tag_list import BrickSetTagList
|
from .set_tag_list import BrickSetTagList
|
||||||
from .theme_list import BrickThemeList
|
from .theme_list import BrickThemeList
|
||||||
|
|
||||||
@ -17,13 +14,13 @@ def reload() -> None:
|
|||||||
BrickInstructionsList(force=True)
|
BrickInstructionsList(force=True)
|
||||||
|
|
||||||
# Reload the set owners
|
# Reload the set owners
|
||||||
BrickSetOwnerList(BrickSetOwner, force=True)
|
BrickSetOwnerList.new(force=True)
|
||||||
|
|
||||||
# Reload the set statuses
|
# Reload the set statuses
|
||||||
BrickSetStatusList(BrickSetStatus, force=True)
|
BrickSetStatusList.new(force=True)
|
||||||
|
|
||||||
# Reload the set tags
|
# Reload the set tags
|
||||||
BrickSetTagList(BrickSetTag, force=True)
|
BrickSetTagList.new(force=True)
|
||||||
|
|
||||||
# Reload retired sets
|
# Reload retired sets
|
||||||
BrickRetiredList(force=True)
|
BrickRetiredList(force=True)
|
||||||
|
@ -9,11 +9,8 @@ from .exceptions import NotFoundException
|
|||||||
from .minifigure_list import BrickMinifigureList
|
from .minifigure_list import BrickMinifigureList
|
||||||
from .part_list import BrickPartList
|
from .part_list import BrickPartList
|
||||||
from .rebrickable_set import RebrickableSet
|
from .rebrickable_set import RebrickableSet
|
||||||
from .set_owner import BrickSetOwner
|
|
||||||
from .set_owner_list import BrickSetOwnerList
|
from .set_owner_list import BrickSetOwnerList
|
||||||
from .set_status import BrickSetStatus
|
|
||||||
from .set_status_list import BrickSetStatusList
|
from .set_status_list import BrickSetStatusList
|
||||||
from .set_tag import BrickSetTag
|
|
||||||
from .set_tag_list import BrickSetTagList
|
from .set_tag_list import BrickSetTagList
|
||||||
from .sql import BrickSQL
|
from .sql import BrickSQL
|
||||||
if TYPE_CHECKING:
|
if TYPE_CHECKING:
|
||||||
@ -169,9 +166,9 @@ class BrickSet(RebrickableSet):
|
|||||||
|
|
||||||
# Load from database
|
# Load from database
|
||||||
if not self.select(
|
if not self.select(
|
||||||
owners=BrickSetOwnerList(BrickSetOwner).as_columns(),
|
owners=BrickSetOwnerList.new().as_columns(),
|
||||||
statuses=BrickSetStatusList(BrickSetStatus).as_columns(all=True),
|
statuses=BrickSetStatusList.new().as_columns(all=True),
|
||||||
tags=BrickSetTagList(BrickSetTag).as_columns(),
|
tags=BrickSetTagList.new().as_columns(),
|
||||||
):
|
):
|
||||||
raise NotFoundException(
|
raise NotFoundException(
|
||||||
'Set with ID {id} was not found in the database'.format(
|
'Set with ID {id} was not found in the database'.format(
|
||||||
|
@ -3,11 +3,8 @@ from typing import Self
|
|||||||
from flask import current_app
|
from flask import current_app
|
||||||
|
|
||||||
from .record_list import BrickRecordList
|
from .record_list import BrickRecordList
|
||||||
from .set_owner import BrickSetOwner
|
|
||||||
from .set_owner_list import BrickSetOwnerList
|
from .set_owner_list import BrickSetOwnerList
|
||||||
from .set_status import BrickSetStatus
|
|
||||||
from .set_status_list import BrickSetStatusList
|
from .set_status_list import BrickSetStatusList
|
||||||
from .set_tag import BrickSetTag
|
|
||||||
from .set_tag_list import BrickSetTagList
|
from .set_tag_list import BrickSetTagList
|
||||||
from .set import BrickSet
|
from .set import BrickSet
|
||||||
|
|
||||||
@ -44,9 +41,9 @@ class BrickSetList(BrickRecordList[BrickSet]):
|
|||||||
# Load the sets from the database
|
# Load the sets from the database
|
||||||
for record in self.select(
|
for record in self.select(
|
||||||
order=self.order,
|
order=self.order,
|
||||||
owners=BrickSetOwnerList(BrickSetOwner).as_columns(),
|
owners=BrickSetOwnerList.new().as_columns(),
|
||||||
statuses=BrickSetStatusList(BrickSetStatus).as_columns(),
|
statuses=BrickSetStatusList.new().as_columns(),
|
||||||
tags=BrickSetTagList(BrickSetTag).as_columns(),
|
tags=BrickSetTagList.new().as_columns(),
|
||||||
):
|
):
|
||||||
brickset = BrickSet(record=record)
|
brickset = BrickSet(record=record)
|
||||||
|
|
||||||
@ -115,9 +112,9 @@ class BrickSetList(BrickRecordList[BrickSet]):
|
|||||||
for record in self.select(
|
for record in self.select(
|
||||||
order=order,
|
order=order,
|
||||||
limit=limit,
|
limit=limit,
|
||||||
owners=BrickSetOwnerList(BrickSetOwner).as_columns(),
|
owners=BrickSetOwnerList.new().as_columns(),
|
||||||
statuses=BrickSetStatusList(BrickSetStatus).as_columns(),
|
statuses=BrickSetStatusList.new().as_columns(),
|
||||||
tags=BrickSetTagList(BrickSetTag).as_columns(),
|
tags=BrickSetTagList.new().as_columns(),
|
||||||
):
|
):
|
||||||
brickset = BrickSet(record=record)
|
brickset = BrickSet(record=record)
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
import logging
|
import logging
|
||||||
|
from typing import Self
|
||||||
|
|
||||||
from .metadata_list import BrickMetadataList
|
from .metadata_list import BrickMetadataList
|
||||||
from .set_owner import BrickSetOwner
|
from .set_owner import BrickSetOwner
|
||||||
@ -15,3 +16,8 @@ class BrickSetOwnerList(BrickMetadataList[BrickSetOwner]):
|
|||||||
|
|
||||||
# Queries
|
# Queries
|
||||||
select_query = 'set/metadata/owner/list'
|
select_query = 'set/metadata/owner/list'
|
||||||
|
|
||||||
|
# Instantiate the list with the proper class
|
||||||
|
@classmethod
|
||||||
|
def new(cls, /, *, force: bool = False) -> Self:
|
||||||
|
return cls(BrickSetOwner, force=force)
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
import logging
|
import logging
|
||||||
|
from typing import Self
|
||||||
|
|
||||||
from .metadata_list import BrickMetadataList
|
from .metadata_list import BrickMetadataList
|
||||||
from .set_status import BrickSetStatus
|
from .set_status import BrickSetStatus
|
||||||
@ -24,3 +25,8 @@ class BrickSetStatusList(BrickMetadataList[BrickSetStatus]):
|
|||||||
in self.records
|
in self.records
|
||||||
if all or record.fields.displayed_on_grid
|
if all or record.fields.displayed_on_grid
|
||||||
]
|
]
|
||||||
|
|
||||||
|
# Instantiate the list with the proper class
|
||||||
|
@classmethod
|
||||||
|
def new(cls, /, *, force: bool = False) -> Self:
|
||||||
|
return cls(BrickSetStatus, force=force)
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
import logging
|
import logging
|
||||||
|
from typing import Self
|
||||||
|
|
||||||
from .metadata_list import BrickMetadataList
|
from .metadata_list import BrickMetadataList
|
||||||
from .set_tag import BrickSetTag
|
from .set_tag import BrickSetTag
|
||||||
@ -15,3 +16,8 @@ class BrickSetTagList(BrickMetadataList[BrickSetTag]):
|
|||||||
|
|
||||||
# Queries
|
# Queries
|
||||||
select_query = 'set/metadata/tag/list'
|
select_query = 'set/metadata/tag/list'
|
||||||
|
|
||||||
|
# Instantiate the list with the proper class
|
||||||
|
@classmethod
|
||||||
|
def new(cls, /, *, force: bool = False) -> Self:
|
||||||
|
return cls(BrickSetTag, force=force)
|
||||||
|
@ -3,9 +3,7 @@ from flask_login import login_required
|
|||||||
|
|
||||||
from ..configuration_list import BrickConfigurationList
|
from ..configuration_list import BrickConfigurationList
|
||||||
from .exceptions import exception_handler
|
from .exceptions import exception_handler
|
||||||
from ..set_owner import BrickSetOwner
|
|
||||||
from ..set_owner_list import BrickSetOwnerList
|
from ..set_owner_list import BrickSetOwnerList
|
||||||
from ..set_tag import BrickSetTag
|
|
||||||
from ..set_tag_list import BrickSetTagList
|
from ..set_tag_list import BrickSetTagList
|
||||||
from ..socket import MESSAGES
|
from ..socket import MESSAGES
|
||||||
|
|
||||||
@ -21,8 +19,8 @@ def add() -> str:
|
|||||||
|
|
||||||
return render_template(
|
return render_template(
|
||||||
'add.html',
|
'add.html',
|
||||||
brickset_owners=BrickSetOwnerList(BrickSetOwner).list(),
|
brickset_owners=BrickSetOwnerList.new().list(),
|
||||||
brickset_tags=BrickSetTagList(BrickSetTag).list(),
|
brickset_tags=BrickSetTagList.new().list(),
|
||||||
path=current_app.config['SOCKET_PATH'],
|
path=current_app.config['SOCKET_PATH'],
|
||||||
namespace=current_app.config['SOCKET_NAMESPACE'],
|
namespace=current_app.config['SOCKET_NAMESPACE'],
|
||||||
messages=MESSAGES
|
messages=MESSAGES
|
||||||
@ -38,8 +36,8 @@ def bulk() -> str:
|
|||||||
|
|
||||||
return render_template(
|
return render_template(
|
||||||
'add.html',
|
'add.html',
|
||||||
brickset_owners=BrickSetOwnerList(BrickSetOwner).list(),
|
brickset_owners=BrickSetOwnerList.new().list(),
|
||||||
brickset_tags=BrickSetTagList(BrickSetTag).list(),
|
brickset_tags=BrickSetTagList.new().list(),
|
||||||
path=current_app.config['SOCKET_PATH'],
|
path=current_app.config['SOCKET_PATH'],
|
||||||
namespace=current_app.config['SOCKET_NAMESPACE'],
|
namespace=current_app.config['SOCKET_NAMESPACE'],
|
||||||
messages=MESSAGES,
|
messages=MESSAGES,
|
||||||
|
@ -47,9 +47,9 @@ def admin() -> str:
|
|||||||
database_version = database.version
|
database_version = database.version
|
||||||
database_counters = BrickSQL().count_records()
|
database_counters = BrickSQL().count_records()
|
||||||
|
|
||||||
metadata_owners = BrickSetOwnerList(BrickSetOwner).list()
|
metadata_owners = BrickSetOwnerList.new().list()
|
||||||
metadata_statuses = BrickSetStatusList(BrickSetStatus).list(all=True)
|
metadata_statuses = BrickSetStatusList.new().list(all=True)
|
||||||
metadata_tags = BrickSetTagList(BrickSetTag).list()
|
metadata_tags = BrickSetTagList.new().list()
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
database_exception = e
|
database_exception = e
|
||||||
|
|
||||||
|
@ -2,11 +2,8 @@ from flask import Blueprint, render_template
|
|||||||
|
|
||||||
from .exceptions import exception_handler
|
from .exceptions import exception_handler
|
||||||
from ..minifigure_list import BrickMinifigureList
|
from ..minifigure_list import BrickMinifigureList
|
||||||
from ..set_owner import BrickSetOwner
|
|
||||||
from ..set_owner_list import BrickSetOwnerList
|
from ..set_owner_list import BrickSetOwnerList
|
||||||
from ..set_status import BrickSetStatus
|
|
||||||
from ..set_status_list import BrickSetStatusList
|
from ..set_status_list import BrickSetStatusList
|
||||||
from ..set_tag import BrickSetTag
|
|
||||||
from ..set_tag_list import BrickSetTagList
|
from ..set_tag_list import BrickSetTagList
|
||||||
from ..set_list import BrickSetList
|
from ..set_list import BrickSetList
|
||||||
|
|
||||||
@ -20,8 +17,8 @@ def index() -> str:
|
|||||||
return render_template(
|
return render_template(
|
||||||
'index.html',
|
'index.html',
|
||||||
brickset_collection=BrickSetList().last(),
|
brickset_collection=BrickSetList().last(),
|
||||||
brickset_owners=BrickSetOwnerList(BrickSetOwner).list(),
|
brickset_owners=BrickSetOwnerList.new().list(),
|
||||||
brickset_statuses=BrickSetStatusList(BrickSetStatus).list(),
|
brickset_statuses=BrickSetStatusList.new().list(),
|
||||||
brickset_tags=BrickSetTagList(BrickSetTag).list(),
|
brickset_tags=BrickSetTagList.new().list(),
|
||||||
minifigure_collection=BrickMinifigureList().last(),
|
minifigure_collection=BrickMinifigureList().last(),
|
||||||
)
|
)
|
||||||
|
@ -17,11 +17,8 @@ from ..minifigure import BrickMinifigure
|
|||||||
from ..part import BrickPart
|
from ..part import BrickPart
|
||||||
from ..set import BrickSet
|
from ..set import BrickSet
|
||||||
from ..set_list import BrickSetList
|
from ..set_list import BrickSetList
|
||||||
from ..set_owner import BrickSetOwner
|
|
||||||
from ..set_owner_list import BrickSetOwnerList
|
from ..set_owner_list import BrickSetOwnerList
|
||||||
from ..set_status import BrickSetStatus
|
|
||||||
from ..set_status_list import BrickSetStatusList
|
from ..set_status_list import BrickSetStatusList
|
||||||
from ..set_tag import BrickSetTag
|
|
||||||
from ..set_tag_list import BrickSetTagList
|
from ..set_tag_list import BrickSetTagList
|
||||||
from ..socket import MESSAGES
|
from ..socket import MESSAGES
|
||||||
|
|
||||||
@ -37,9 +34,9 @@ def list() -> str:
|
|||||||
return render_template(
|
return render_template(
|
||||||
'sets.html',
|
'sets.html',
|
||||||
collection=BrickSetList().all(),
|
collection=BrickSetList().all(),
|
||||||
brickset_owners=BrickSetOwnerList(BrickSetOwner).list(),
|
brickset_owners=BrickSetOwnerList.new().list(),
|
||||||
brickset_statuses=BrickSetStatusList(BrickSetStatus).list(),
|
brickset_statuses=BrickSetStatusList.new().list(),
|
||||||
brickset_tags=BrickSetTagList(BrickSetTag).list(),
|
brickset_tags=BrickSetTagList.new().list(),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@ -49,7 +46,7 @@ def list() -> str:
|
|||||||
@exception_handler(__file__, json=True)
|
@exception_handler(__file__, json=True)
|
||||||
def update_owner(*, id: str, metadata_id: str) -> Response:
|
def update_owner(*, id: str, metadata_id: str) -> Response:
|
||||||
brickset = BrickSet().select_light(id)
|
brickset = BrickSet().select_light(id)
|
||||||
owner = BrickSetOwnerList(BrickSetOwner).get(metadata_id)
|
owner = BrickSetOwnerList.new().get(metadata_id)
|
||||||
|
|
||||||
state = owner.update_set_state(brickset, json=request.json)
|
state = owner.update_set_state(brickset, json=request.json)
|
||||||
|
|
||||||
@ -62,7 +59,7 @@ def update_owner(*, id: str, metadata_id: str) -> Response:
|
|||||||
@exception_handler(__file__, json=True)
|
@exception_handler(__file__, json=True)
|
||||||
def update_status(*, id: str, metadata_id: str) -> Response:
|
def update_status(*, id: str, metadata_id: str) -> Response:
|
||||||
brickset = BrickSet().select_light(id)
|
brickset = BrickSet().select_light(id)
|
||||||
status = BrickSetStatusList(BrickSetStatus).get(metadata_id)
|
status = BrickSetStatusList.new().get(metadata_id)
|
||||||
|
|
||||||
state = status.update_set_state(brickset, json=request.json)
|
state = status.update_set_state(brickset, json=request.json)
|
||||||
|
|
||||||
@ -75,7 +72,7 @@ def update_status(*, id: str, metadata_id: str) -> Response:
|
|||||||
@exception_handler(__file__, json=True)
|
@exception_handler(__file__, json=True)
|
||||||
def update_tag(*, id: str, metadata_id: str) -> Response:
|
def update_tag(*, id: str, metadata_id: str) -> Response:
|
||||||
brickset = BrickSet().select_light(id)
|
brickset = BrickSet().select_light(id)
|
||||||
tag = BrickSetTagList(BrickSetTag).get(metadata_id)
|
tag = BrickSetTagList.new().get(metadata_id)
|
||||||
|
|
||||||
state = tag.update_set_state(brickset, json=request.json)
|
state = tag.update_set_state(brickset, json=request.json)
|
||||||
|
|
||||||
@ -130,9 +127,9 @@ def details(*, id: str) -> str:
|
|||||||
'set.html',
|
'set.html',
|
||||||
item=BrickSet().select_specific(id),
|
item=BrickSet().select_specific(id),
|
||||||
open_instructions=request.args.get('open_instructions'),
|
open_instructions=request.args.get('open_instructions'),
|
||||||
brickset_owners=BrickSetOwnerList(BrickSetOwner).list(),
|
brickset_owners=BrickSetOwnerList.new().list(),
|
||||||
brickset_statuses=BrickSetStatusList(BrickSetStatus).list(all=True),
|
brickset_statuses=BrickSetStatusList.new().list(all=True),
|
||||||
brickset_tags=BrickSetTagList(BrickSetTag).list(),
|
brickset_tags=BrickSetTagList.new().list(),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user