This is my “models.py”:
<code>class PostData(models.Model):
#image = models.ImageField(upload_to="")
title_name = models.CharField(max_length=255)
description = models.CharField(max_length=10000)
author = models.ForeignKey(User, on_delete=models.CASCADE)
date_created = models.DateTimeField(auto_now_add=True)
date_updated = models.DateTimeField(auto_now=True)
</code>
<code>class PostData(models.Model):
#image = models.ImageField(upload_to="")
title_name = models.CharField(max_length=255)
description = models.CharField(max_length=10000)
author = models.ForeignKey(User, on_delete=models.CASCADE)
date_created = models.DateTimeField(auto_now_add=True)
date_updated = models.DateTimeField(auto_now=True)
</code>
class PostData(models.Model):
#image = models.ImageField(upload_to="")
title_name = models.CharField(max_length=255)
description = models.CharField(max_length=10000)
author = models.ForeignKey(User, on_delete=models.CASCADE)
date_created = models.DateTimeField(auto_now_add=True)
date_updated = models.DateTimeField(auto_now=True)
This is my “views.py”:
<code>def createPost(request):
if request.method == "POST":
form = PostForm(request.POST)
print(form.is_valid())
if form.is_valid():
# To extarct data from web page
title = form.cleaned_data['title_name']
description = form.cleaned_data['description']
# To get username which is stored in session
author = request.session.get("username")
print(author)
print(title)
# To store Data
PostData.objects.create(title_name=title, description=description, author=author)
</code>
<code>def createPost(request):
if request.method == "POST":
form = PostForm(request.POST)
print(form.is_valid())
if form.is_valid():
# To extarct data from web page
title = form.cleaned_data['title_name']
description = form.cleaned_data['description']
# To get username which is stored in session
author = request.session.get("username")
print(author)
print(title)
# To store Data
PostData.objects.create(title_name=title, description=description, author=author)
</code>
def createPost(request):
if request.method == "POST":
form = PostForm(request.POST)
print(form.is_valid())
if form.is_valid():
# To extarct data from web page
title = form.cleaned_data['title_name']
description = form.cleaned_data['description']
# To get username which is stored in session
author = request.session.get("username")
print(author)
print(title)
# To store Data
PostData.objects.create(title_name=title, description=description, author=author)
And I am getting the following error:
ValueError at /create/
Cannot assign “‘dhruv123′”: “PostData.author” must be a “User” instance.
So how to solve this error?
Your request.session.get("username")
is not a django User instance.
<code>author = User.objects.get(name = request.session.get("username"))
</code>
<code>author = User.objects.get(name = request.session.get("username"))
</code>
author = User.objects.get(name = request.session.get("username"))
Depending on your request.session
.
New contributor
Hector Mikolajczak is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.