I have this function to get items from DB according to the PK:
def new_topic(request, board_id):
board = get_object_or_404(Board, pk = board_id)
user = User.objects.first()
if request.method == 'POST':
form = NewTopicForm(request.POST)
if form.is_valid():
topic = form.save(commit=False)
topic.board = board
topic.created_by = user
topic.save()
post = Posts.objects.create(
message = form.cleaned_data.get('message'),
created_by = user,
topic = topic
)
return render('board_topics', board_id = board.pk)
else:
form = NewTopicForm()
return render(request,'new_topic.html', {'board':board, 'form':form})
But it gives this error:
render() got an unexpected keyword argument 'board_id'
CodePudding user response:
Take a look into the documentation of render function (https://docs.djangoproject.com/en/4.0/topics/http/shortcuts/#render)
This should work:
render(request, 'board_topics', dict(board_id=board.pk))
CodePudding user response:
The function render expects first parameter as request and then template name and lastly optional is context so change your first render to this:
return render(request, 'board_topics.html', {'board_id': board.pk})
