sol.models.player
– Players¶
-
class
sol.models.player.
Player
(**kwargs)¶ A single person.
-
agreedprivacy
¶ Whether the player explicitly accepted the privacy policy: his name and other details will be dimmed if he did not.
-
birthdate
¶ Date of birth of the player.
-
caption
(html=None, localized=True, css_class=None)¶ Description of the player, made up concatenating his names.
-
classmethod
check_insert
(session, fields)¶ Prevent duplicated players.
-
check_update
(fields)¶ Perform any check before updating the instance.
-
citizenship
¶ Whether the player belongs legally to the given country or not.
-
country
¶ The name of the player’s country.
-
delete
()¶ Prevent deletion if this player is involved in some tourney.
-
description
¶ Description of the player, made up concatenating his names.
-
email
¶ Email address of the player.
-
classmethod
find
(session, lastname, firstname, nickname='', guid=None)¶ Find a player, even after it has been merged into another.
Parameters: - session – an SQLAlchemy session
- lastname – a string, the last name of the player
- firstname – a string, the first name of the player
- nickname – a string, the nick name of the player
- guid – the hex string of an UUID
Return type: a tuple
This tries to find the given player by looking for it first in the
players
table then in themerged_players
table, either by guid or by name.If found, it returns a tuple with the current player (that is, the eventual target of the merge) and a boolean flag,
False
when it is current orTrue
if it has been merged.If not found it returns a
(None, False)
tuple.
-
firstname
¶ Player’s first name.
-
idclub
¶ Membership club’s ID.
-
idfederation
¶ Membership federation’s ID.
-
idplayer
¶ Primary key.
-
lastname
¶ Player’s last name.
-
matchesSummary
()¶ Return the number of won, lost, tied and single matches.
-
mergePlayers
(other_players, clogger=None)¶ Merge multiple players into a single one.
Parameters: other_players – a sequence of players ids or guids, or tuples like (guid, lastname, firstname, nickname)
Return type: a list of replaced players descriptions This will replace the specified players with this one wherever they participated to a game, either in singles or team events.
This is obviously possible only when the specified players didn’t play together in any tourney.
The old names are stored in the table
merged_players
with a reference to the current player (that is, self), so that they can be correctly resolved in the future.
-
merged
¶ A possibly empty list of
MergedPlayer
that has been merged into this one.
-
nationality
¶ ISO country code to compute national rankings.
-
nickname
¶ Player’s nickname.
-
opponents
()¶ Return a summary of the opponents this player met, in singles.
-
participations
()¶ Return the list of
competitors
involving this player.
-
phone
¶ Phone number of the player.
-
portrait
¶ Picture of the player, used by lit.
This is just the filename, referencing a picture inside the
sol.portraits_dir
directory.
-
serialize
(serializer)¶ Reduce a single player to a simple dictionary.
Parameters: serializer – a Serializer
instanceReturn type: dict Returns: a plain dictionary containing a flatified view of this player
-
sex
¶ Player’s gender:
F
means female,M
means male.
-
shouldOmitNickName
(_non_word_letters=re.compile('\\W'))¶ Determine if the nickname should be omitted because redundant.
-