解析静态json文件并将值保存到Django数据库/模型 [英] Parsing static json file and save values to Django Database/model

查看:564
本文介绍了解析静态json文件并将值保存到Django数据库/模型的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的django项目的静态文件夹中有json文件.我想将数据从json文件保存到我的Django数据库中.

I have json file in my static folder in my django project. And I want to save the data from json file to my Django Database.

这是我的模特.py

from django.db import models


class Coming_Soon(models.Model):
    movie_id = models.CharField(primary_key=True, max_length=11)
    movie_title = models.TextField(blank=True, max_length=100)
    image_url = models.TextField(blank=True)
    synopsis = models.TextField(blank=True)
    rating = models.TextField(default="MTRCB rating not yet available")
    cast = models.TextField(blank=True)
    release_date = models.TextField()

这是我的json文件的示例

this is sample of my json file

{
  "results": [
    {
      "rating": "PG",
      "cast": [
        "Jeremy Ray Taylor",
        "Gerard Butler",
        "Abbie Cornish"
      ],
      "synopsis": "some synopsis",
      "movie_title": "(3D/4DX) GEOSTORM",
      "image_url": "some url",
      "id": "8595"
    },
    {
      "rating": "PG",
      "cast": [
        "Jeremy Ray Taylor",
        "Gerard Butler",
        "Abbie Cornish"
      ],
      "synopsis": "some synopsis",
      "movie_title": "(ATMOS) GEOSTORM",
      "image_url": "some url",
      "id": "8604"
    }
  ]
}

我应该在视图上写些什么,以便将那些数据保存到django数据库中?这是我的views.py:

what should I write on my view so that I can save those data into my django database? This is my views.py:

def polls(request):
    ROOT_FILE = STATIC_ROOT + '/polls/coming_soon.json'
    json_data = open(ROOT_FILE)
    json_load = json.load(json_data)

    with open(ROOT_FILE, 'r') as data:
        parsed_json = json.load(data)

        for result in parsed_json['results']:
    # HOW CAN I SAVE DATA INTO DATABASE??

我真的不知道将那些文件放入数据库.谢谢.

I really don't have any idea about getting those file into my database. Thank you.

推荐答案

您可以像这样创建obj

You can create obj like this

from .models import Coming_Soon
   def polls(request):

    ROOT_FILE = STATIC_ROOT + '/polls/coming_soon.json'
    json_data = open(ROOT_FILE)
    json_load = json.load(json_data)

    with open(ROOT_FILE, 'r') as data:
    parsed_json = json.load(data)

    for result in parsed_json['results']:
        Coming_Soon.objects.create(
           movie_id = result['id'],
           movie_title = result['movie_title'],
           image_url=result['image_url'],
           synopsis = result['synopsis'], 
         ) 

这篇关于解析静态json文件并将值保存到Django数据库/模型的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆