本文整理汇总了Python中webapp.models.card.Card.gets_by_tag方法的典型用法代码示例。如果您正苦于以下问题:Python Card.gets_by_tag方法的具体用法?Python Card.gets_by_tag怎么用?Python Card.gets_by_tag使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类webapp.models.card.Card
的用法示例。
在下文中一共展示了Card.gets_by_tag方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: boy_chart
# 需要导入模块: from webapp.models.card import Card [as 别名]
# 或者: from webapp.models.card.Card import gets_by_tag [as 别名]
def boy_chart(cls):
ids = {}
for d in Card.gets_by_tag('萌'):
ids[d.id] = 1
for d in Card.gets_by_tag('单身'):
n = ids.get(d.id, 0)
ids[d.id] = n + 1
for d in Card.gets_by_tag('少年'):
n = ids.get(d.id, 0)
ids[d.id] = n + 1
for d in Card.gets_by_tag('gay'):
n = ids.get(d.id, 0)
ids[d.id] = n + 1
for d in Card.gets_by_tag('娘'):
n = ids.get(d.id, 0)
ids[d.id] = n + 1
rs = store.execute("select user_id from me_profile where flag=N and sex=1 and marriage in (1, 2, 12)")
for r in rs:
i = str(r[0])
n = ids.get(i, 0)
ids[i] = n + 2
love_cards = [Card.get(i) for i, n in ids.iteritems() if n > 1]
love_cards = [d for d in love_cards if d.profile.sex != 2]
love_cards = sorted(love_cards, key=attrgetter('score'), reverse=True)
return love_cards
示例2: girl_chart
# 需要导入模块: from webapp.models.card import Card [as 别名]
# 或者: from webapp.models.card.Card import gets_by_tag [as 别名]
def girl_chart(cls):
ids = {}
for d in Card.gets_by_tag('萌'):
ids[d.id] = 1
for d in Card.gets_by_tag('单身'):
n = ids.get(d.id, 0)
ids[d.id] = n + 1
for d in Card.gets_by_tag('妹子'):
n = ids.get(d.id, 0)
ids[d.id] = n + 1
for d in Card.gets_by_tag('萝莉'):
n = ids.get(d.id, 0)
ids[d.id] = n + 1
for d in Card.gets_by_tag(''):
n = ids.get(d.id, 0)
ids[d.id] = n + 1
rs = store.execute("select user_id from me_profile where flag=N and sex=2 and marriage in (1, 2, 12)")
for r in rs:
i = str(r[0])
n = ids.get(i, 0)
ids[i] = n + 2
love_cards = [Card.get(i) for i, n in ids.iteritems() if n > 1]
love_cards = [d for d in love_cards if ('汉子' not in ' '.join(d.ptag_names) and d.profile.sex != 1)]
love_cards = sorted(love_cards, key=attrgetter('score'), reverse=True)
return love_cards
示例3: update_tags
# 需要导入模块: from webapp.models.card import Card [as 别名]
# 或者: from webapp.models.card.Card import gets_by_tag [as 别名]
def update_tags(self, tags):
rs = store.execute("select tag_id from me_group_tag where group_id=%s and tagger_id=%s"
" order by tag_id", (self.id, self.user_id))
old_tag_ids = [str(r[0]) for r in rs]
#print 'old tag ids', old_tag_ids
store.execute("delete from me_group_tag where group_id=%s and tagger_id=%s", (self.id, self.user_id))
for t in tags:
if t:
r = store.execute("select id from me_tag where name=%s", t)
if r and r[0]:
tag_id = r[0][0]
else:
store.execute("insert into me_tag(name) values(%s)", t)
tag_id = store.get_cursor(table="me_tag").lastrowid
if tag_id:
store.execute("replace into me_group_tag(group_id, tagger_id, tag_id)"
" values(%s,%s,%s)", (self.id, self.user_id, tag_id))
store.commit()
for t in self.tag_names:
ds = Card.gets_by_tag(t)
[self._join(d.id) for d in ds]
Notify.new(self.user_id, self.user_id, Notify.TYPE_TAG_ADD_GROUP, extra={"group_id":self.id, "tag":t})
示例4: _q_lookup
# 需要导入模块: from webapp.models.card import Card [as 别名]
# 或者: from webapp.models.card.Card import gets_by_tag [as 别名]
def _q_lookup(req, tag):
tag = unescape_path(tag)
cards = Card.gets_by_tag(tag)
return st('/cards/tag.html', **locals())