Как вставить (добавить) данные JSON в базу данных MySql через Postman или Rest API Framework, используя Django? - PullRequest
0 голосов
/ 19 июня 2019

Я недавно начал программировать на Python с использованием Django и MySql. Итак, я столкнулся с проблемой простой вставки данных (в формате JSON) в таблицу в базе данных MySql. Я пробовал несколько вещей, о которых я упоминаю ниже.не работает. И я использую следующее - Python, Django Framework, MySql Database, соединитель mysqlclient, Rest API Framework, Postman.Пожалуйста, помогите мне с предложениями.

from django.shortcuts import render, redirect
from rest_framework.decorators import api_view
from rest_framework.response import Response
from .models import fetchdata
from .serializers import fetchdataSerializers
from rest_framework import status,response
from rest_framework import viewsets
from django.http import HttpResponse

@api_view(['GET','POST'])

def index(request):

 if request.method=='POST':

    try:
        _json = request.json
        _name = _json['name']
        _email = _json['email']
        _password = _json['pwd']
        sql = "INSERT INTO tbl_user(user_name,user_email,user_password) 
        VALUES(%s,%s,%s)"
        data = (_name, _email, _password,)
        conn = mysql.connect()
        cursor = conn.cursor()
        cursor.execute(sql, data)
        conn.commit()
        resp = jsonify('User added successfully!')
        serializer=fetchdataSerializers(data=request.data)

         if serializer.is_valid():

          serializer.save()

  return resp
  return Response(serializer.data,status=status.HTTP_201_CREATED)
  return Response(serializer.errors,status=status.HTTP_400_BAD_REQUEST)

1 Ответ

2 голосов
/ 19 июня 2019

Вы можете добавить папку фикстур в свое приложение и поместить в нее файл Json. Файл Json может быть чем-то вроде этой категории. Json

[
    {
      "model": "category",
      "pk": 1,
      "fields": {
        "name": "person",
        "created_at": "2019-05-06T09:27:51.386383",
        "updated_at": "2019-05-06T09:27:51.386383"
      }
    },

  ]

Выполнить python manage.py loadata category.json. В зависимости от того, как вы планируете реализовать это, вы можете запустить эту команду после миграции. Проверьте Doc , чтобы понять больше

...