Guest User

Untitled

a guest
Jun 21st, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.67 KB | None | 0 0
  1. from datetime import datetime
  2. from sqlalchemy import Table, Column, String, Boolean, DateTime, Integer, or_, ForeignKey
  3. from sqlalchemy.orm import relation, backref
  4.  
  5. from pyfantasy.utils import session, metadata, url_for, get_random_uid
  6. from sqlalchemy.ext.declarative import declarative_base
  7.  
  8. Base = declarative_base()
  9.  
  10. pcmap = Table("pcmap", metadata, Column("playerid", ForeignKey("players.uid")), Column("clanid", ForeignKey("clans.uid")))
  11.  
  12.  
  13. class Player(Base):
  14. __tablename__ = "players"
  15.  
  16. uid = Column(Integer, primary_key=True)
  17. country = Column(String(2))
  18. name = Column(String(40))
  19. price = Column(Integer)
  20. score = Column(Integer, default=0)
  21. rwin = Column(Integer, default=0)
  22. rloss = Column(Integer, default=0)
  23. kills = Column(Integer, default=0)
  24. deaths = Column(Integer, default=0)
  25. assists = Column(Integer, default=0)
  26. wards = Column(Integer, default=0)
  27. #real_clan_uid = Column(ForeignKey("realclans.uid"))
  28.  
  29. def __init__(self, country, name, price, real_clan):
  30. self.country = country
  31. self.name = name
  32. self.price = price
  33. #self.real_clan_uid = real_clan.uid
  34.  
  35. def __repr__(self):
  36. return "<Player %r, Real_Clan %r>" % (self.uid, self.real_clan)
  37.  
  38. class Real_Clan(Base):
  39. __tablename__ = "realclans"
  40.  
  41. uid = Column(Integer, primary_key=True)
  42. country = Column(String(2))
  43. tag = Column(String(5))
  44. name = Column(String(40))
  45. website = Column(String(40))
  46. #players = relation("Player", backref="real_clan", order_by="desc(Player.score)", primaryjoin="Real_Clan.uid==Player.real_clan_uid")
  47.  
  48. def __init__(self, country, tag, name, website):
  49. self.country = country
  50. self.tag = tag
  51. self.name = name
  52. self.website = website
  53.  
  54. def __repr__(self):
  55. return "<Real_Clan %r>" % self.uid
  56.  
  57. class Clan(Base):
  58. __tablename__ = "clans"
  59.  
  60. uid = Column(Integer, primary_key=True)
  61. name = Column(String(40), unique=True)
  62. transfers = Column(Integer, default=3)
  63. money = Column(Integer, default=10000)
  64. score = Column(Integer, default=0)
  65. rwin = Column(Integer, default=0)
  66. rloss = Column(Integer, default=0)
  67. kills = Column(Integer, default=0)
  68. deaths = Column(Integer, default=0)
  69. assists = Column(Integer, default=0)
  70. wards = Column(Integer, default=0)
  71.  
  72. players = relation('Player', secondary=pcmap, backref='clans')
  73.  
  74. def __init__(self, name, *player_list):
  75. self.name = name
  76.  
  77. for player in player_list:
  78. self.players.append(player)
  79.  
  80. def __repr__(self):
  81. return "<Clan %r>" % self.uid
Add Comment
Please, Sign In to add comment