本文整理汇总了Python中event.Event.add方法的典型用法代码示例。如果您正苦于以下问题:Python Event.add方法的具体用法?Python Event.add怎么用?Python Event.add使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类event.Event
的用法示例。
在下文中一共展示了Event.add方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test2
# 需要导入模块: from event import Event [as 别名]
# 或者: from event.Event import add [as 别名]
def test2():
a = db.tag.insert(name='red')
b = db.tag.insert(name='yellow')
c = db.tag.insert(name='green')
e = Event(db)
e1 = e.add('message1')
e2 = e.add('message2')
e3 = e.add('message3')
id = db.product.insert(name='Toy Car',tags=[a, b])
product = db(db.product.id==id).select().first()
product.tags.append(c)
if product.events==None:
product.events=[e1,e2,e3]
else:
product.events.append(e1)
product.events.append(e2)
product.events.append(e3)
product.update_record()
product_new = db(db.product.id==id).select().first()
return dict(products=product_new)
示例2: Fabuser
# 需要导入模块: from event import Event [as 别名]
# 或者: from event.Event import add [as 别名]
class Fabuser(object):
"""Build a User object"""
def __init__(self,db,auth):
self.db = db
self.request = current.request
self.session = current.session
self.auth = auth
self.user_id = None
self.user = None
self.fabmanager_group_id = None
self.event = Event(db)
def get_grid(self):
"""Return a SQLFORM.smartgrid"""
self.db.auth_user.badges.writable=True
self.db.auth_user.UM_balance.writable=True
self.db.auth_user.member_end_date.writable=True
self.db.auth_user._singular = "User"
self.db.auth_user._plural = "Users"
grid = SQLFORM.smartgrid(self.db.auth_user,
linked_tables=['badges',],
searchable= dict(parent=True, child=True),
create=False,
editable = self.auth.has_membership(role='Fab Manager'),
deletable = self.auth.has_membership(role='Fab Manager'),
showbuttontext=False,
)
return dict(grid=grid)
def get_user(self,user_id):
"""Load a user"""
if user_id==None:
return None
else:
#~ self.user = self.auth_user(self.auth_user.id==user_id)
self.user = self.db(self.db.auth_user.id==user_id).select().first()
if self.user !=None:
self.user_id = user_id
return self.user
def is_member(self,user_id=None):
"""is_member says if user is member or not"""
if self.user_not_loaded(user_id): return "Please select user_id"
def set_fabmanager(self,enable=True,user_id=None):
"""set_fabmanager push the user in the fabmanager group (or not)"""
if self.user_not_loaded(user_id): return "Please select user_id"
self.get_fabmanager_group_id()
if enable:
"""Add to FabManager group"""
result = self.db.auth_membership.update_or_insert(user_id=self.user_id,group_id=self.fabmanager_group_id)
event = self.push_event("User '"+self.user.first_name+" "+self.user.last_name+" is set in Fab Manager group :: "+str(result))
else:
"""Remove from FabManger group"""
result = self.db((self.db.auth_membership.user_id==self.user_id)&(self.db.auth_membership.group_id==self.fabmanager_group_id)).delete()
event = self.push_event("User '"+self.user.first_name+" "+self.user.last_name+" is removed from Fab Manager group :: "+str(result))
return dict(result=result,event=event)
def get_fabmanager_group_id(self):
"""get_fabmanager_group_id get the Fab Manager group id"""
self.fabmanager_group_id = self.db(self.db.auth_group.role=="Fab Manager").select().first().id
def push_event(self,msg,m_type='log',user_id=None):
"""push_event add a event to the user"""
if self.user_not_loaded(user_id): return "Please select user_id"
event = self.event.add(msg)
if self.user.history==None:
self.user.history=[event]
else:
self.user.history.append(event)
self.user.update_record()
return event
def user_not_loaded(self,user_id):
"""user_not_loaded return true id user is not loaded"""
if self.user==None:
if self.get_user(user_id)==None:
return True
else:
return False
def __exit__(self):
"""save user before exit"""
if self.user!=None:
self.user.update_record()
示例3: SmartQQ
# 需要导入模块: from event import Event [as 别名]
# 或者: from event.Event import add [as 别名]
#.........这里部分代码省略.........
def msg_handler(self, msgs):
for m in msgs:
if type(m) == type(""):
variable.Offine = True
self.logout()
break
msg = Msg(m.get("poll_type"), m.get("value"))
# print("data: ", msg.getData())
# 消息类型(群消息or个人消息)
mtype = msg.getPollType()
# 发送者
fuin = msg.getFromUin()
# print("fuin: ", fuin)
# 群消息发送者
suin = msg.getSendUin()
# print("suin: ", suin)
content = msg.getContent()
# print("content: ", content)
content = msg.getMsg()
# print("content: ", content)
# 被挤下线
if mtype == "kick_message":
reason = msg.getReason()
data = {"from":variable.Email, "to":variable.Email, "title":"QQ下线", "msg":reason}
self._http.post(variable.EmailUrl, data)
# 私聊or临时
elif mtype in ("message", "sess_message"):
# qq = self.uin_to_qq(msg.getFromUin())
# print("qq: ", qq)
# item = (函数,发送者,None,None,消息)
if not variable.State:
return # 机器人被管理员关闭
item = (self._task.delwith, fuin, None, None, content)
self._event.add(item)
# 群聊
elif mtype == "group_message":
if not variable.State:
return # 机器人被管理员关闭
# 群号码
iseq = msg.getInfoSeq()
# print("iseq: ", iseq)
# suin = msg.getSendUin()
# print("suin: ", suin)
# item = (函数,发送群,发送者,群号码,消息)
print(content)
item = (self._task.delwith, fuin, suin, iseq, content)
self._event.add(item)
def logout(self):
url = variable.LogoutUrl.format(variable.Clientid, variable.Psessionid)
self._http.get(url, referer = variable.Referer)
self._event.stop()
self._task.end()
def login(self):
print("正在获取登录页面")
html = self._http.get(variable.LoginUrl)
# print html
login_url = self.getReValue(self.strToBytes(html), b'\.src\s*=\s*"(.*?)"').group(1)
print("login_url: %s", login_url)
html = self._http.get(self.bytesToStr(login_url) + "0")
print(self.strToBytes(html));open('html.html','wb').write(self.strToBytes(html))
print("获取appid")
variable.Appid = self.getReValue(self.strToBytes(html), b'var g_appid\s*=\s*encodeURIComponent\("(\d+)"\);').group(1)