オプション1:使用は
をloaddataの
Djangoは、コマンドを使用して、json | xml | ..のデータをモデルに「転送」するコマンドを実行しました。 はyourapp/fixtures
や再フォーマットにファイルprices.json
を移動し、loaddata
を使用するには:
[{
"model": "yourapp.yourmodel",
"pk": 1,
"fields": {
"name": "Item A",
"price": 1
}
}, {
"model": "yourapp.yourmodel",
"pk": 2,
"fields": {
"name": "Item B",
"price": 2
}
}]
はその後のコマンドを実行します。python manage.py loaddata prices
オプション2:使用の移行
場合は、あなたのファイル形式を変更したくありません、空の移行を作成する
python manage.py makemigrations yourapp --empty
新しい移行ファイルで
、このようなinsert_price
、何かを追加します。最後に
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
import json
from django.db import models, migrations
from yourapp.models import Model
def insert_price(apps, schema_editor):
with open('/path/to/prices.json') as data_file:
data = json.load(data_file)
for item in data:
# Update, map field for item to make it match with Model
# item['description'] = 'Just kidding'
Model.objects.create(**item)
class Migration(migrations.Migration):
dependencies = [
('yourapp', '000_previous_depends'),
]
operations = [
migrations.RunPython(insert_price),
]
を、その移行python manage.py migrate
を適用するあなたはJSONデータを解析するかだけを表示したいですか?そして、あなたはこれをフォーマットした、あるいは単純なjsonとして表示したいですか? – dentemm
私はどのような解析が理解できません。どういう意味ですか?電話番号は、正面に0を書いてフォーマットする必要があります。他のすべてはうまく見えます。 –