sol.models.player – Players¶
-
class
sol.models.player.Player(**kwargs)¶ A single person.
-
birthdate¶ Date of birth of the player.
-
caption(html=None, localized=True)¶ Description of the player, made up concatenating his names.
-
classmethod
check_insert(klass, session, fields)¶ Prevent duplicated players
-
check_password(raw_password)¶ Check the password
Parameters: raw_password – the raw password, in clear Return type: boolean Return
Trueif the raw_password matches the user’s password,Falseotherwise.
-
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.
-
crypt= <cryptacular.bcrypt.BCRYPTPasswordManager object>¶ The crypt engine used for the password field.
-
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(klass, 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
playerstable then in themerged_playerstable, 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,
Falsewhen it is current orTrueif 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 partecipated 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_playerswith 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
MergedPlayerthat has been merged into this one.
-
nationality¶ ISO country code to compute national rankings.
-
nickname¶ Player’s nickname, used also for login purposes.
-
opponents()¶ Return a summary of the opponents this player met, in singles.
-
partecipations()¶ Return the list of
competitorsinvolving 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_dirdirectory.
-
serialize(serializer)¶ Reduce a single player to a simple dictionary.
Parameters: serializer – a SerializerinstanceReturn type: dict Returns: a plain dictionary containing a flatified view of this player
-
sex¶ To compute different championship:
Fmeans female,Mmeans male.
-
shouldOmitNickName(_non_word_letters=re.compile('\\W'))¶ Determine if the nickname should be omitted because redundant.
-