Adds separate view and load links for book search results
This commit is contained in:
@ -263,6 +263,7 @@ class SearchResult:
|
||||
title: str
|
||||
key: str
|
||||
connector: object
|
||||
view_link: str = None
|
||||
author: str = None
|
||||
year: str = None
|
||||
cover: str = None
|
||||
@ -284,7 +285,7 @@ class Mapping:
|
||||
""" associate a local database field with a field in an external dataset """
|
||||
|
||||
def __init__(self, local_field, remote_field=None, formatter=None):
|
||||
noop = lambda x: x
|
||||
noop = lambda x, *_: x
|
||||
|
||||
self.local_field = local_field
|
||||
self.remote_field = remote_field or local_field
|
||||
|
@ -11,9 +11,11 @@ class Connector(AbstractConnector):
|
||||
def __init__(self, identifier):
|
||||
super().__init__(identifier)
|
||||
|
||||
get_remote_id = lambda a, *args: self.base_url + a
|
||||
self.book_mappings = [
|
||||
Mapping("title", remote_field="wdt:P1476", formatter=get_claim),
|
||||
Mapping("id", remote_field="id"),
|
||||
Mapping("id", remote_field="key", formatter=get_remote_id),
|
||||
Mapping("inventaireId", remote_field="id"),
|
||||
Mapping("cover", remote_field="image", formatter=self.get_cover_url),
|
||||
Mapping("isbn13", remote_field="wdt:P212", formatter=get_claim),
|
||||
Mapping("isbn10", remote_field="wdt:P957", formatter=get_claim),
|
||||
@ -35,6 +37,7 @@ class Connector(AbstractConnector):
|
||||
return SearchResult(
|
||||
title=search_result.get("label"),
|
||||
key="{:s}{:s}".format(self.books_url, search_result.get("uri")),
|
||||
view_link="{:s}{:s}".format(self.base_url, search_result.get("uri")),
|
||||
cover=cover,
|
||||
connector=self,
|
||||
)
|
||||
|
Reference in New Issue
Block a user