Здравствуйте, я знаю, что у меня есть две проблемы. одна проблема simpleLazyObject, которую я могу исправить с помощью своего рода хакерским способом. Другой «Comment.user» должен быть экземпляром «MyProfile», который я не знаю, как исправить. Я думаю, что где-то в пути все перепуталось.Невозможно назначить «<SimpleLazyObject: <User: XXX>>»: «Comment.user» должен быть экземпляром «MyProfile»
def post(request, slug):
user = get_object_or_404(User,username__iexact=request.user)
try:
profile = MyProfile.objects.get(user_id=request.user.id)
# if it's a OneToOne field, you can do:
# profile = request.user.myprofile
except MyProfile.DoesNotExist:
profile = None
post = get_object_or_404(Post, slug=slug)
post.views += 1 # increment the number of views
post.save() # and save it
comments = post.comment_set.all()
comment_form = CommentForm(request.POST or None)
if comment_form.is_valid():
post_instance = comment_form.save(commit=False)
post_instance.user = request.user #this is where error is occuring, if I put request.user.id simpleLazyObject dissapears.
post_instance.path = request.get_full_path()
post_instance.post = post
post_instance.save()
context_dict = {
'post' :post,
'profile' :profile,
'comments':comments,
'comment_form': comment_form
}
return render(request, 'main/post.html', context_dict)
Я не уверен, что это значит, что comment.user должен быть экземпляром myprofile.
в моем комментарии приложение, models.py меня
class Comment(models.Model):
user = models.ForeignKey(MyProfile)
и в моей бухгалтерии приложение, models.py меня
class MyProfile(UserenaBaseProfile):
user = models.OneToOneField(User, unique=True, verbose_name=_('user'), related_name='my_profile')
Я не уверен, как решить эту проблему, любая помощь будет высоко оценена ...
привет Aviah :) hmmm позвольте мне переварить это ..... – winixxee
эй. Это реляционный ORM –
Прошу прощения, я очень смущен этим правом нет. это не те самые те же самые tihngs? Я пробовал это так, но все равно получаю ту же ошибку ... что мне нужно, чтобы точно изменить? Может быть, я не понимаю это правильно. – winixxee