我有一个json格式的文件,结构如下:
{
"Admiralty Islands": [
[
"Up to 1 kg",
"5.00"
],
[
"1 - 10 kg",
"10.00"
],
],
"Afghanistan": [
[
"Up to 1 kg",
"15.00"
],
[
"1 - 10 kg",
"20.00"
],
],
...
}
还有三个模型:
class Country(models.Model):
name = models.CharField(max_length=128, unique=True)
class Weight(models.Model):
name = models.CharField(max_length=128, unique=True)
min_weight = models.IntegerField()
max_weight = models.IntegerField()
class Shipping(models.Model):
country = models.ForeignKey(Country)
weight = models.ForeignKey(Weight)
price = models.DecimalField(max_digits=7, decimal_places=2)
使用json文件导入数据库最正确的方法是什么?
我应该将 json 文件转换为 fixture 文件吗?但是如何处理表之间的关系呢?
还是像这样编写 view
会更好:
f = open('file.json', 'r')
obj = simplejson.load(f)
for o in obj:
record = Country(name = o)
record.save()
但也不知道如何在模型
之间建立关系。
或者有更简单的方法吗?
谢谢。
最佳答案
使用 manage.py 导入 fixtures:
python manage.py loaddata fixture.json
关于python - 将 json 文件导入 Django 模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9643291/