Exemplo n.º 1
0
 def delete(self, obj_id, commit=True):
     obj = self.get(url=obj_id)
     session.delete(obj)
     if commit:
         session.flush()
         session.commit()
     return obj
Exemplo n.º 2
0
def populate_db():
    fcontr = FeedController()
    ccontr = CategoryController()
    UserController().create(
        **{
            'is_admin': True,
            'is_api': True,
            'cluster_enabled': False,
            'login': '******',
            'password': '******'
        })
    user1, user2 = [
        UserController().create(login=name,
                                cluster_enabled=False,
                                email="*****@*****.**" % name,
                                password=name) for name in ["user1", "user2"]
    ]

    for iteration in range(2):
        article_total = 0

        for user in (user1, user2):
            for iter_cat in range(3):
                cat_id = None
                if iter_cat:
                    cat_id = ccontr.create(user_id=user.id,
                                           name=to_name(
                                               user, iteration, iter_cat)).id
                feed_id = fcontr.create(
                    link="feed%d%d" % (iteration, iter_cat),
                    user_id=user.id,
                    category_id=cat_id,
                    title=to_name(user, iteration, iter_cat, iter_cat)).id
                for iter_art in range(3):
                    entry = to_name(user, iteration, iter_cat, iter_cat,
                                    iter_art)

                    tags = [
                        to_name(user, iteration, iter_cat, iter_cat, iter_art,
                                str(i)) for i in range(2)
                    ]
                    article_total += 1
                    ArticleController().create(
                        entry_id=entry,
                        link='http://test.te/%d' % article_total,
                        feed_id=feed_id,
                        user_id=user.id,
                        tags=tags,
                        category_id=cat_id,
                        title=entry,
                        date=utc_now() + timedelta(seconds=iteration),
                        content="content %d" % article_total)

    session.commit()
    session.flush()
    ClusterController().clusterize_pending_articles()
Exemplo n.º 3
0
 def update(self, filters, attrs, return_objs=False, commit=True):
     if not attrs:
         logger.error("nothing to update, doing nothing")
         result, commit = {}, False
     else:
         result = self._get(**filters).update(attrs,
                                              synchronize_session=False)
     if commit:
         session.flush()
         session.commit()
     if return_objs:
         return self._get(**filters)
     return result
Exemplo n.º 4
0
    def create(self, **attrs):
        if not attrs:
            raise ValueError("attributes to update must not be empty")
        if self._user_id_key is not None and self._user_id_key not in attrs:
            attrs[self._user_id_key] = self.user_id
        if not (self._user_id_key is None or self._user_id_key in attrs
                or self.user_id is None):
            raise Unauthorized("You must provide user_id one way or another")

        obj = self._db_cls(**attrs)
        session.add(obj)
        session.flush()
        session.commit()
        return obj
Exemplo n.º 5
0
 def delete_only_article(article, commit):
     session.delete(article)
     if commit:
         session.flush()
         session.commit()
     return article