示例#1
0
文件: __init__.py 项目: QFAPP/QF
    def store(self, topic_name, article_entry_list):
        """Stores the article entries in the database.

        :param topic_name The name of the topic
        :param article_entry_list The list of entries of this topic
        """

        try:
            # Try to retrieve the topic to see if it exists already
            topic = Topic.get(Topic.name == topic_name)
        except Topic.DoesNotExist:
            # If not, create it
            topic = Topic.create(name=topic_name)

        # Go through all the articles in this topic
        for article_entry in article_entry_list:
            article_name = article_entry.subject

            # If there is no subject, it means the article is corrupted
            # therefore we skip it
            if not article_name:
                continue

            # Create the files with the content
            # Overwrite existing files
            try:
                Article.create(topic=topic, subject=article_name,
                               body=article_entry.body)
            except Article.DoesNotExist:
                pass
示例#2
0
文件: topic.py 项目: bb-js/bb-js.org
    def POST(self):
        if not session.user or session.user.id is None:
            return bad_request('请先登录!')

        data = web.data()
        data = json.loads(data)

        tags = [tag for tag in data.get('tags', '').split(' ') if tag]
        topic_data = {
            "title": data.get('title'),
            "tags": tags,
            "owner_id": session.user.id,
            "created_time": datetime.now(),
        }

        try:
            topic_id = Topic.create(**topic_data)
        except sqlite3.IntegrityError:
            return bad_request('你已创建过该名称!')

        topic_data.update({
            "id": topic_id,
            "owner_name": session.user.username,
            "created_time": display_time(topic_data.get('created_time')),
        })
        return json.dumps(topic_data)
示例#3
0
文件: handlers.py 项目: fatfan/mychat
    def POST(self):
        if not session.user or not session.user.id:
            return bad_request('请先登录!')
        if session.user.username != 'ff':
            return bad_request('sorry,你没有创建权限')

        data = web.data()
        data = json.loads(data)

        topic_data = {
            "title": data.get('title'),
            "owner_id": session.user.id,
            "created_time": datetime.now(),
        }

        try:
            topic_id = Topic.create(**topic_data)
        except sqlite3.IntegrityError:
            return bad_request('你已创建过该名称!')

        result = {
            "id": topic_id,
            "title": topic_data.get('title'),
            "owner_id": session.user.id,
            "owner_name": session.user.username,
            "created_time": str(topic_data.get('created_time')),
        }
        return json.dumps(result)
示例#4
0
    def POST(self):
        if not session.user or not session.user.id:
            return bad_request('请先登录!')

        data = web.data()
        data = json.loads(data)

        topic_data = {
            "title": data.get('title'),
            "owner_id": session.user.id,
            "created_time": datetime.now(),
        }

        try:
            topic_id = Topic.create(**topic_data)
        except sqlite3.IntegrityError:
            return bad_request('你已创建过该名称!')

        result = {
            "id": topic_id,
            "title": topic_data.get('title'),
            "owner_id": session.user.id,
            "owner_name": session.user.username,
            "created_time": str(topic_data.get('created_time')),
        }
        return json.dumps(result)
示例#5
0
def seed_sources():
    crawler = GenericSourceCrawler(Scraper([GenericSourceParser]), Scraper([RSSParser]))
    with open('resources/sources.dat') as f:
        for source_url in f:
            source = crawler.crawl(source_url.strip())

            db_subscription = Subscription.update_or_create(Subscription.url == source.url,
                                                            url=source.url,
                                                            name=source.name,
                                                            image=source.image_url)

            for topic in source.topics:
                kwargs = {'source': db_subscription, 'name': topic.name, 'url': topic.url}
                try:
                    Topic.get(**kwargs)
                except Topic.DoesNotExist:
                    Topic.create(**kwargs)
示例#6
0
    def post(self):
        user = users.get_current_user()
        name = user.nickname()
        title = self.request.get("title")
        content = self.request.get("content")
        date = datetime.now().strftime("%d-%m-%Y at %H:%M")

        topic = Topic.create(name, title, content, date)
        topic.put()

        return self.redirect('/topic/' + str(topic.key.id()))
def recreate_topic(name):
    _topic = Topic(config=config)
    _topic.topic = name
    _topic.delete()
    _topic.create()