2010-06-10 25 views
0

我是python和django的新手。如何在使用前初始化Django模型?

應用程序|版本

  • 的Python 2.6.2
  • 的Django(PostgreSQL的工作)

問題:我寫了一個簡單的模型:

class OperationType(models.Model): 
    eid   = models.IntegerField() 
    name   = models.TextField(blank=True) 
    description = models.TextField(blank=True) 

    def __unicode__(self): 
     tpl = 'eid="', str(self.eid), '" name="', self.name, '"' 
     return ''.join(tpl) 

現在我需要初始化它,例如與這個數據:

0, "None" 
1, "Add" 
2, "Edit" 
3, "Delete" 

但我需要初始化這個數據不是用admin web面板,而是在相同的代碼中創建類模型之後。這個怎麼做?

感謝您的幫助!


新增: 文件initial_data.json

[ 
    { 
    "model": "OperationType", 
    "pk": 1, 
    "fields": { 
     "eid": 0, 
     "name": "None", 
     "description": "Do nothing" 
    } 
    }, 
    { 
    "model": "OperationType", 
    "pk": 2, 
    "fields": { 
     "eid": 1, 
     "name": "Add", 
     "description": "Adding transaction" 
    } 
    } 
] 
+2

你的'__unicode __()'沒有返回'unicode'。你可能想在它爆炸之前解決這個問題。 – 2010-06-10 07:41:33

回答

2

Here

+0

感謝您的回覆。我嘗試使用帶有內容的initial_data.json文件(添加到問題中),但是當我運行* python manage.py syncdb *時,它返回錯誤:* DeserializationError:無效的模型標識符:'OperationType'*?我做錯了什麼? – mosg 2010-06-10 08:39:55

+0

完成! :)我需要* accounting.operationtype *! – mosg 2010-06-10 08:47:12