2

モデルを拡張してユーザーを含めようとしていますが、運がよくありません。

from django.db import models
from django.contrib.auth.models import User

class TestModel(models.Model):
    user = models.OneToOneField(User)

    def __unicode__(self):
        return "Value[" + self.user + "];"

ただし、これをテストしようとすると、次のようになります。

>>> t = TestModel()
>>> t
Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "/Library/Python/2.7/site-packages/django/db/models/base.py", line 373, in __repr__
    u = unicode(self)
  File "/Users/lkatz/tmp/private/Projects/Web/rcos_portal/driver/models.py", line 39, in __unicode__
    return "Value[" + self.user + "];"
  File "/Library/Python/2.7/site-packages/django/db/models/fields/related.py", line 343, in __get__
    raise self.field.rel.to.DoesNotExist
DoesNotExist
4

1 に答える 1

2

UserインスタンスをクラスTestModelに渡していない:

このようなことをします:

from django.contrib.auth.models import User

us = User.objects.all()[0]
t = TestModel(user=us)
t.save()
print t
于 2012-11-17T22:30:47.840 に答える