Как получить результат JSON при добавлении пользователя в базу данных Mysql с помощью API колбы - PullRequest
0 голосов
/ 04 октября 2019

Когда я добавляю пользователя в базу данных MySQL с помощью Flask Rest API, я не могу получить результат в формате JSON?

Я могу добавить пользователя в базу данных MYSQL Успешно, но не могу получить результатв файле JSON мне нужен результат как {'user': 'added', 'Response' : '200 Ok'}

Мой код:

from flask import Flask, request, jsonify
import mysql.connector
import jsonify

app = Flask(__name__)

@app.route('/')
def index():
    return "This is database kind of thing "

@app.route('/add', methods=['POST'])
def adduser():
    result = [{'msg': 'success'}, {'stat': '200 ok'}]
    if request.method == 'POST':
        input_body = request.get_json()
        number = input_body['number']
        name = input_body['name']
        company = input_body['company']
        location = input_body['location']
        salary = input_body['salary']
        Operation = input_body['Operation']

        if Operation == 'adduser':
            connection = mysql.connector.connect(host="localhost", user="root", passwd="root", database="aviral")
            mycursor = connection.cursor()
            query = "INSERT INTO data (number, name, company, location, salary) VALUES (%s,%s,%s,%s,%s)"
            val = (number, name, company, location, salary)
            mycursor.execute(query, val)
            connection.commit()
            return jsonify({'result': result})

if __name__ == "__main__":
    app.run(debug=True)

Мои данные успешно добавляются в MYSQL WorkBench, в то время как я получаю сообщение об ошибке, теперь мне нужен только JSONответ в API Tester, такой как Postman

Добавление данных с использованием Postman

{
    "number": "12",
    "name": "Chetana",
    "company": "MDH",
    "location": "Masale",
    "salary": "23504",
    "Operation": "adduser"
}

Но при добавлении данных ниже, при добавлении данных, MYSQL

return jsonify({'result': result})
TypeError: 'module' object is not callable

1 Ответ

0 голосов
/ 04 октября 2019

У вас есть второй импорт для jsonify - что неправильно. Правильный импорт:

from flask import jsonify

Или вы можете напрямую получить доступ к методу jsonify с помощью:

flask.jsonify({'result': result})

Удалить этот импорт:

import jsonify
...