2010-06-10 4 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" 

Но мне нужно инициализировать эти данные не с помощью веб-панели администратора, а после модели класса, созданной в том же коде. Как это сделать?

Спасибо за помощь!


ДОБАВЛЕНО: файл 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'. Вы можете исправить это, прежде чем оно взорвется вам в лицо. –

ответ

2

Here.

+0

Спасибо за ответ. Я попытался использовать файл initial_data.json с содержимым (добавленным к вопросу), но когда я запускаю * python manage.py syncdb *, он возвращает мне ошибку: * DeserializationError: недопустимый идентификатор модели: 'OperationType' *? Что я делаю неправильно? – mosg

+0

Сделано! :) Мне нужно * accounting.operationtype *! – mosg