2012-02-07 2 views
0

Почему это не работает?Сохранение, связанное с объектами модели пользователя

models.py:

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

views.py:

def add_car(request, model): 
    new_car = Car(owner=request.user.id, model=model) 
    new_car.save() 

Ошибка:

ValueError at /add/ 
Cannot assign "7L": "Car.user" must be a "User" instance. 

Что такое 7L? Мой пользовательский идентификатор 7, когда я пишу print request.user.id, это меня. 7.

ответ

3

Вы должны установить для всей модели Car.user не только идентификатор.

new_car = Car(owner=request.user, model=model) 
+2

Или вы можете сделать 'owner_id = request.user.id', но он должен быть идентификатором id или объектом объекта. Вы не можете их смешивать. –

Смежные вопросы