Exemple #1
0
def create_post():
    title = request.json.get('title', None)
    text = request.json.get('text', None)
    media = request.json.get('media', None)

    new_post = Post(title=title, text=text, media=media)
    if new_post:
        new_post.create()
        return jsonify(new_post.to_dict()), 201

    else:
        return {'error': 'Something went wrong'}, 409
Exemple #2
0
    def create(self, request):
        try:
            # tokenの確認
            authorization = self.check_authorization()
            if authorization:
                # tokenがなかったり違っていたらJSONレスポンスを返す
                return authorization

            # JSONのデータの読み込み
            data = json.loads(request.body)

            # テキストの代入
            body = data['body']
            # statusの代入
            status = data['status']
        except:
            # JSONの読み込みに失敗 keyエラーでも失敗
            return JsonResponse({'message': 'Post data injustice'}, status=400)

        # 文字数が140字以内の判定
        if len(body) > 140:
            return JsonResponse({'message': 'Must be 140 characters or less'},
                                status=403)

        # 投稿(データベースに保存)
        post = Post.create(body, status, self.token.user_id)

        # 結果をdictに保存しJSONレスポンスで返す
        result = {
            'id': post.id,
            'body': post.body,
            'status': post.status,
        }
        return JsonResponse(result, status=201)