40 def __init__(self, **kwargs): |
40 def __init__(self, **kwargs): |
41 for key, value in kwargs.items(): |
41 for key, value in kwargs.items(): |
42 if hasattr(self,key): |
42 if hasattr(self,key): |
43 setattr(self,key,value) |
43 setattr(self,key,value) |
44 |
44 |
45 |
45 class TweetSource(Base): |
|
46 __tablename__ = 'tweet_tweet_source' |
|
47 id = Column(Integer, primary_key = True, autoincrement=True) |
|
48 original_json = Column(String) |
|
49 received_at = Column(DateTime, default=datetime.datetime.now()) |
|
50 |
|
51 def __init__(self, **kwargs): |
|
52 for key, value in kwargs.items(): |
|
53 if hasattr(self,key): |
|
54 setattr(self,key,value) |
|
55 |
|
56 |
|
57 class TweetLog(Base): |
|
58 |
|
59 TWEET_STATUS = { |
|
60 'OK' : 1, |
|
61 'ERROR' : 2, |
|
62 } |
|
63 |
|
64 __tablename__ = 'tweet_tweet_log' |
|
65 id = Column(Integer, primary_key = True, autoincrement=True) |
|
66 tweet_source_id = Column(Integer, ForeignKey('tweet_tweet_source.id')) |
|
67 tweet_source = relationship("TweetSource", backref="logs") |
|
68 status = Column(Integer) |
|
69 error = Column(String) |
|
70 error_stack = Column(String) |
|
71 |
|
72 |
46 class Tweet(Base): |
73 class Tweet(Base): |
47 __tablename__ = 'tweet_tweet' |
74 __tablename__ = 'tweet_tweet' |
48 |
75 |
49 id = Column(BigInteger, primary_key=True, autoincrement=False) |
76 id = Column(BigInteger, primary_key=True, autoincrement=False) |
50 id_str = Column(String) |
77 id_str = Column(String) |
63 retweeted = Column(Boolean) |
90 retweeted = Column(Boolean) |
64 source = Column(String) |
91 source = Column(String) |
65 text = Column(String) |
92 text = Column(String) |
66 truncated = Column(Boolean) |
93 truncated = Column(Boolean) |
67 user_id = Column(Integer, ForeignKey('tweet_user.id')) |
94 user_id = Column(Integer, ForeignKey('tweet_user.id')) |
68 original_json = Column(String) |
95 user = relationship("User", backref="tweets") |
|
96 tweet_source_id = Column(Integer, ForeignKey('tweet_tweet_source.id')) |
|
97 tweet_source = relationship("TweetSource", backref="tweet") |
69 entity_list = relationship(Entity, backref='tweet') |
98 entity_list = relationship(Entity, backref='tweet') |
70 received_at = Column(DateTime, default=datetime.datetime.now()) |
99 received_at = Column(DateTime, default=datetime.datetime.now()) |
71 |
100 |
72 #user = relationship(User, primaryjoin=user_id == User.id) |
|
73 |
|
74 def __init__(self, **kwargs): |
101 def __init__(self, **kwargs): |
75 for key, value in kwargs.items(): |
102 for key, value in kwargs.items(): |
76 if hasattr(self,key): |
103 if hasattr(self,key): |
77 setattr(self,key,value) |
104 setattr(self,key,value) |
78 |
105 |
79 class UserMessage(Base): |
106 class UserMessage(Base): |
80 __tablename__ = "tweet_user_message" |
107 __tablename__ = "tweet_user_message" |
81 |
108 |
82 id = Column(Integer, primary_key = True) |
109 id = Column(Integer, primary_key = True) |
83 user_id = Column(Integer, ForeignKey('tweet_user.id')) |
110 user_id = Column(Integer, ForeignKey('tweet_user.id')) |
|
111 user = relationship("User", backref="messages") |
84 created_at = Column(DateTime, default=datetime.datetime.now()) |
112 created_at = Column(DateTime, default=datetime.datetime.now()) |
85 message_id = Column(Integer, ForeignKey('tweet_message.id')) |
113 message_id = Column(Integer, ForeignKey('tweet_message.id')) |
86 |
114 |
87 class Message(Base): |
115 class Message(Base): |
88 |
|
89 __tablename__ = "tweet_message" |
116 __tablename__ = "tweet_message" |
90 |
117 |
91 id = Column(Integer, primary_key = True) |
118 id = Column(Integer, primary_key = True) |
92 created_at = Column(DateTime, default=datetime.datetime.now()) |
119 created_at = Column(DateTime, default=datetime.datetime.now()) |
93 text = Column(String) |
120 text = Column(String) |
129 statuses_count = Column(Integer) |
156 statuses_count = Column(Integer) |
130 time_zone= Column(String) |
157 time_zone= Column(String) |
131 url= Column(String) |
158 url= Column(String) |
132 utc_offset = Column(Integer) |
159 utc_offset = Column(Integer) |
133 verified= Column(Boolean) |
160 verified= Column(Boolean) |
134 tweets = relationship(Tweet, backref='user') |
|
135 messages = relationship(UserMessage, backref='user') |
|
136 |
161 |
137 def __init__(self, **kwargs): |
162 def __init__(self, **kwargs): |
138 for key, value in kwargs.items(): |
163 for key, value in kwargs.items(): |
139 if hasattr(self,key): |
164 if hasattr(self,key): |
140 setattr(self,key,value) |
165 setattr(self,key,value) |