def create_post(request): if request.method == "POST": # use this to add users to DB TABLE TODO post = Post( user=request.user, pub_date=timezone.localtime(), winner_selected=False, ) form = PostForm(instance=post, data=request.POST) if form.is_valid(): form.save() return redirect('boards:index') else: form = PostForm() return render(request, "boards/new_post_form.html", {'form': form})
def reply_topic(request, pk, topic_pk): topic = get_object_or_404(Topic, board__pk=pk, pk=topic_pk) if request.method == 'POST': form = PostForm(request.POST) if form.is_valid(): post = form.save(commit=False) post.topic = topic post.created_by = request.user post.save() topic.last_update = timezone.now() topic.save() topic_url = reverse('topic_posts', kwargs={ 'pk': pk, 'topic_pk': topic_pk }) topic_post_url = '{url}?page={page}#{id}'.format( url=topic_url, id=post.pk, page=topic.get_page_count()) return redirect(topic_post_url) else: form = PostForm return render(request, 'reply_topic.html', {'topic': topic, 'form': form})
def reply_topic(request, pk, topic_pk): topic = get_object_or_404(Topic, board__pk=pk, pk=topic_pk) form = PostForm(request.POST) if form.is_valid(): post = form.save(commit=False) post.topic = topic post.created_by = request.user post.save() topic.last_updated = timezone.now() topic.save() topic_url = reverse('topic_posts', kwargs={ 'pk': pk, 'topic_pk': topic_pk }) topic_post_url = '{url}?page={page}#{id}'.format( url=topic_url, id=post.pk, page=topic.get_page_count()) send_reply_notification.delay(post.topic.starter.username, post.topic.starter.email, post.topic.subject, post.created_by.username) return redirect(topic_post_url) return render(request, 'reply_topic.html', {'topic': topic, 'form': form})
def reply_topic(request, board_id, topic_id): try: topic = Topic.objects.get(pk=topic_id) except Topic.DoesNotExist: raise Http404 if request.method == 'POST': form = PostForm(request.POST) if form.is_valid(): post = form.save(commit=False) post.topic = topic post.created_by = request.user post.save() topic.last_updated = timezone.now() topic.save() topic_url = reverse('topic_posts', kwargs={ 'board_id': board_id, 'topic_pk': topic_id }) topic_post_url = '{url}?page={page}#{id}'.format( url=topic_url, id=post.pk, page=topic.get_page_count()) # return redirect('topic_posts', board_id=topic.board_id, topic_pk=topic.pk) return redirect(topic_post_url) else: form = PostForm() return render(request, 'reply_topic.html', {'topic': topic, 'form': form})
def post(request): """ posting questions """ if request.method == "POST": postform = PostForm(request.POST) if postform.is_valid(): _post = postform.save(commit=False) _post.user = request.user _post.save() # tags(ManyToManyField) for _tagname in request.POST.get('tags', '').split(','): _tagname = _tagname.strip() # When only _tagname is not blank if _tagname: _tag, _created = Tag.objects.get_or_create( name=_tagname, defaults={'name': _tagname}) _post.tags.add(_tag) return HttpResponseRedirect(reverse('home')) elif request.method == "GET": postform = PostForm() return render(request, "post.html", { 'postform': postform, })
def reply_topic(request, board_id, topic_id): topic = get_object_or_404(Topic, board_id=board_id, id=topic_id) if request.method == 'POST': form = PostForm(request.POST) if form.is_valid(): post = form.save(commit=False) post.topic = topic post.created_by = request.user post.save() # update topic's last_updated topic.last_updated = datetime.now() topic.save() topic_url = reverse('topic_posts', kwargs={ 'board_id': board_id, 'topic_id': topic_id }) topic_post_url = f'{topic_url}?page={topic.get_page_count()}#{post.id}' return redirect(topic_post_url) else: form = PostForm() return render(request, 'reply_topic.html', {'topic': topic, 'form': form})
def reply_topic(request, pk, topic_pk): topic = get_object_or_404(Topic, board__pk=pk, pk=topic_pk) if request.method == 'POST': form = PostForm(request.POST) if form.is_valid(): post = form.save(commit=False) post.topic = topic post.created_by = request.user post.save() return redirect('topic_posts', pk=pk, topic_pk=topic_pk) else: form = PostForm() return render(request, 'reply_topic.html', {'topic': topic, 'form': form})
def reply_topic(request, pk, topic_pk): topic = get_object_or_404(Topic, board__pk=pk, pk=topic_pk) if request.method == 'POST': form = PostForm(request.POST) if form.is_valid(): post = form.save(commit=False) post.topic = topic post.created_by = request.user post.save() # IMPORTANT: using topic_pk as referring to the keyword argument of the function. return redirect('topic_posts', pk=pk, topic_pk=topic_pk) else: form = PostForm() return render(request, 'reply_topic.html', {'topic': topic, 'form': form})
def reply_topic(request, id, topic_id): topic = get_object_or_404(Topic, board__pk=id, pk=topic_id) if request.method == "POST": form = PostForm(request.POST) if form.is_valid(): post = form.save(commit=False) post.topic = topic post.created_by = request.user post.save() topic.updated_by = request.user topic.updated_dt = timezone.now() topic.save() return redirect('topics_posts', id=id, topic_id=topic_id) else: form = PostForm() return render(request, 'reply_topic.html', {'topic': topic, 'form': form})
def reply_topic(request, pk, topic_pk): topic = get_object_or_404(Topic, board__pk=pk, pk=topic_pk) if request.method == "POST": form = PostForm(request.POST) if form.is_valid(): post = form.save(commit=False) post.topic = topic post.created_by = request.user post.save() return redirect("boards:topic_posts", pk=pk, topic_pk=topic_pk) else: form = PostForm() return render(request, "boards/reply_topic.html", { "topic": topic, "form": form })