Импорт файла json в модель Django

У меня есть файл в формате 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 в файл фикстуры, но что делать с отношениями между таблицами? Или лучше написать viewтипа:

f = open('file.json', 'r')
obj = simplejson.load(f)

for o in obj:
    record = Country(name = o)
    record.save()

Но тоже не могу понять, как сделать отношения между моделями.

Или есть более простой способ?

Спасибо.

11
задан vlad 10 March 2012 в 02:23
поделиться