当前位置: 首页>>代码示例>>Python>>正文


Python SubscriptionAttribute.find_by_sid_and_class方法代码示例

本文整理汇总了Python中announcer.model.SubscriptionAttribute.find_by_sid_and_class方法的典型用法代码示例。如果您正苦于以下问题:Python SubscriptionAttribute.find_by_sid_and_class方法的具体用法?Python SubscriptionAttribute.find_by_sid_and_class怎么用?Python SubscriptionAttribute.find_by_sid_and_class使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在announcer.model.SubscriptionAttribute的用法示例。


在下文中一共展示了SubscriptionAttribute.find_by_sid_and_class方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: render_announcement_preference_box

# 需要导入模块: from announcer.model import SubscriptionAttribute [as 别名]
# 或者: from announcer.model.SubscriptionAttribute import find_by_sid_and_class [as 别名]
    def render_announcement_preference_box(self, req, panel):
        klass = self.__class__.__name__

        if req.method == "POST":
            with self.env.db_transaction as db:
                SubscriptionAttribute.\
                    delete_by_sid_and_class(self.env, req.session.sid,
                                            req.session.authenticated,
                                            klass, db)

                def _map(value):
                    g = re.match('^joinable_group_(.*)', value)
                    if g:
                        if req.args.as_bool(value):
                            return g.groups()[0]

                groups = set(filter(None, map(_map, req.args.keys())))
                SubscriptionAttribute.add(self.env, req.session.sid,
                                          req.session.authenticated, klass,
                                          'ticket', groups, db)

        attrs = filter(None, map(
            lambda x: x['target'],
            SubscriptionAttribute.find_by_sid_and_class(
                self.env, req.session.sid, req.session.authenticated, klass
            )
        ))
        data = dict(joinable_groups={})
        for group in self.joinable_groups:
            data['joinable_groups'][group] = (group in attrs) and True or None
        return 'prefs_announcer_joinable_groups.html', data
开发者ID:aroth-arsoft,项目名称:trac-announcer,代码行数:33,代码来源:subscribers.py

示例2: render_announcement_preference_box

# 需要导入模块: from announcer.model import SubscriptionAttribute [as 别名]
# 或者: from announcer.model.SubscriptionAttribute import find_by_sid_and_class [as 别名]
    def render_announcement_preference_box(self, req, panel):
        klass = self.__class__.__name__

        if req.method == "POST":

            @self.env.with_transaction()
            def do_update(db):
                SubscriptionAttribute.delete_by_sid_and_class(
                    self.env, req.session.sid, req.session.authenticated, klass, db
                )

                def _map(value):
                    g = re.match("^joinable_group_(.*)", value)
                    if g:
                        if istrue(req.args.get(value)):
                            return g.groups()[0]

                groups = set(filter(None, map(_map, req.args.keys())))
                SubscriptionAttribute.add(
                    self.env, req.session.sid, req.session.authenticated, klass, "ticket", groups, db
                )

        attrs = filter(
            None,
            map(
                lambda x: x["target"],
                SubscriptionAttribute.find_by_sid_and_class(
                    self.env, req.session.sid, req.session.authenticated, klass
                ),
            ),
        )
        data = dict(joinable_groups={})
        for group in self.joinable_groups:
            data["joinable_groups"][group] = (group in attrs) and True or None
        return "prefs_announcer_joinable_groups.html", data
开发者ID:nyuhuhuu,项目名称:trachacks,代码行数:37,代码来源:subscribers.py

示例3: render_announcement_preference_box

# 需要导入模块: from announcer.model import SubscriptionAttribute [as 别名]
# 或者: from announcer.model.SubscriptionAttribute import find_by_sid_and_class [as 别名]
    def render_announcement_preference_box(self, req, panel):
        klass = self.__class__.__name__

        if req.method == "POST":
            @self.env.with_transaction()
            def do_update(db):
                SubscriptionAttribute.delete_by_sid_and_class(
                    self.env, req.session.sid, req.session.authenticated, klass)
                blogs = set(map(lambda x: x.strip(),
                    req.args.get('announcer_watch_bloggers').split(',')))
                SubscriptionAttribute.add(self.env, req.session.sid,
                        req.session.authenticated, klass, 'blog', blogs)

        attrs = SubscriptionAttribute.find_by_sid_and_class(self.env,
                req.session.sid, req.session.authenticated, klass)
        data = {'sids': ','.join(set(map(lambda x: x['target'], attrs)))}
        return "prefs_announcer_watch_bloggers.html", dict(data=data)
开发者ID:csnover,项目名称:TracAnnouncer,代码行数:19,代码来源:announce.py

示例4: render_announcement_preference_box

# 需要导入模块: from announcer.model import SubscriptionAttribute [as 别名]
# 或者: from announcer.model.SubscriptionAttribute import find_by_sid_and_class [as 别名]
    def render_announcement_preference_box(self, req, panel):
        klass = self.__class__.__name__

        if req.method == "POST":
            @self.env.with_transaction()
            def do_update(db):
                SubscriptionAttribute.delete_by_sid_and_class(self.env,
                        req.session.sid, req.session.authenticated, klass, db)
                SubscriptionAttribute.add(self.env, req.session.sid,
                    req.session.authenticated, klass,
                    'wiki', req.args.get('wiki_interests', db))

        (interests,) = SubscriptionAttribute.find_by_sid_and_class(
            self.env, req.session.sid, req.session.authenticated, klass
        ) or ({'target':''},)

        return "prefs_announcer_wiki.html", dict(
            wiki_interests = '\n'.join(
                urllib.unquote(x) for x in interests['target'].split(' ')
            )
        )
开发者ID:csnover,项目名称:TracAnnouncer,代码行数:23,代码来源:subscribers.py


注:本文中的announcer.model.SubscriptionAttribute.find_by_sid_and_class方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。