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


Python SubscriptionAttribute.add方法代码示例

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


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

示例1: render_announcement_preference_box

# 需要导入模块: from announcer.model import SubscriptionAttribute [as 别名]
# 或者: from announcer.model.SubscriptionAttribute import add [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: do_update

# 需要导入模块: from announcer.model import SubscriptionAttribute [as 别名]
# 或者: from announcer.model.SubscriptionAttribute import add [as 别名]
 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)
开发者ID:csnover,项目名称:TracAnnouncer,代码行数:9,代码来源:announce.py

示例3: do_update

# 需要导入模块: from announcer.model import SubscriptionAttribute [as 别名]
# 或者: from announcer.model.SubscriptionAttribute import add [as 别名]
 def do_update(db):
     SubscriptionAttribute.delete_by_sid_and_class(self.env,
             req.session.sid, req.session.authenticated, klass, db)
     users = map(lambda x: x.strip(),
             req.args.get("announcer_watch_users").split(','))
     SubscriptionAttribute.add(self.env, req.session.sid,
             req.session.authenticated, klass, 'user', users, db)
开发者ID:csnover,项目名称:TracAnnouncer,代码行数:9,代码来源:subscribers.py

示例4: do_update

# 需要导入模块: from announcer.model import SubscriptionAttribute [as 别名]
# 或者: from announcer.model.SubscriptionAttribute import add [as 别名]
            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("^component_(.*)", value)
                    if g:
                        if istrue(req.args.get(value)):
                            return g.groups()[0]

                components = set(filter(None, map(_map, req.args.keys())))
                SubscriptionAttribute.add(
                    self.env, req.session.sid, req.session.authenticated, klass, "ticket", components, db
                )
开发者ID:nyuhuhuu,项目名称:trachacks,代码行数:17,代码来源:subscribers.py

示例5: test_add_delete

# 需要导入模块: from announcer.model import SubscriptionAttribute [as 别名]
# 或者: from announcer.model.SubscriptionAttribute import add [as 别名]
    def test_add_delete(self):
        attr = SubscriptionAttribute(self.env)
        attr.add(self.env, 'user', 1, 'GeneralWikiSubscriber','wiki',
                 ('TracWiki', 'TracWiki'))
        cursor = self.db.cursor()
        cursor.execute("SELECT COUNT(*) FROM subscription_attribute")
        count = cursor.fetchone()
        self.assertEqual(count[0], 2)

        attr.delete(self.env, 1)
        # Make sure, that we really deleted the 1st attribute.
        cursor.execute("SELECT target FROM subscription_attribute")
        for attribute in cursor.fetchone():
            self.assertEqual(attribute, 'TracWiki')
        cursor.execute("SELECT COUNT(*) FROM subscription_attribute")
        count = cursor.fetchone()
        self.assertEqual(count[0], 1)
        # Deleting non-existent subscriptions is handled gracefully.
        attr.delete(self.env, 1)
开发者ID:lkraav,项目名称:trachacks,代码行数:21,代码来源:model.py

示例6: render_announcement_preference_box

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

        if req.method == "POST":
            with self.env.db_transaction:
                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:aroth-arsoft,项目名称:trac-announcer,代码行数:22,代码来源:announce.py

示例7: process_request

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

        m = re.match(r'^/blog_watch/(.*)', req.path_info)
        (name,) = m.groups()

        with self.env.db_transaction:
            attrs = SubscriptionAttribute.find_by_sid_class_and_target(
                self.env, req.session.sid, req.session.authenticated,
                klass, name)
            if attrs:
                SubscriptionAttribute.delete_by_sid_class_and_target(
                    self.env, req.session.sid, req.session.authenticated,
                    klass, name)
                req.session['_blog_watch_message_'] = \
                    _("You are no longer watching this blog post.")
            else:
                SubscriptionAttribute.add(
                    self.env, req.session.sid, req.session.authenticated,
                    klass, 'blog', (name,))
                req.session['_blog_watch_message_'] = \
                    _("You are now watching this blog post.")

        req.redirect(req.href.blog(name))
开发者ID:aroth-arsoft,项目名称:trac-announcer,代码行数:26,代码来源:announce.py

示例8: set_watch

# 需要导入模块: from announcer.model import SubscriptionAttribute [as 别名]
# 或者: from announcer.model.SubscriptionAttribute import add [as 别名]
 def set_watch(self, sid, authenticated, realm, target):
     klass = self.__class__.__name__
     SubscriptionAttribute.add(self.env, sid, authenticated, klass,
                               realm, (target,))
开发者ID:aroth-arsoft,项目名称:trac-announcer,代码行数:6,代码来源:subscribers.py


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