def group(request, gurl_number): group = Group.objects(url_number=gurl_number).get() if request.method == "POST": form = NewTopicForm(request.POST) if form.is_valid(): title = form.cleaned_data["title"] content = form.cleaned_data["content"] topic = Topic(title=title) turl_number = len(Topic.objects) + 1 topic.url_number = turl_number topic.content = content topic.creat_time = datetime.datetime.now() topic.is_active = True topic.is_locked = False topic.is_top = False topic.clicks = 0 topic.update_time = datetime.datetime.now() topic.update_author = request.user sgcard = S_G_Card.objects(user=request.user, group=group).get() topic.creator = sgcard topic.save() return HttpResponseRedirect("/group/" + str(gurl_number) + "/topic/" + str(turl_number) + "/") else: form = NewTopicForm() return render_to_response( "group/group.html", {"form": form, "group": group, "STATIC_URL": STATIC_URL, "current_user": request.user}, context_instance=RequestContext(request), )
def save(self, commit=True): if not self.topic: # if this post create new topic, create this corresponding topic topic = Topic(forum=self.forum, title=escape(self.cleaned_data['title']), created_by=self.user, updated_by=self.user) topic.save() self.topic = topic topic_post = True else: topic = self.topic topic_post = False post = Post(topic=topic, created_by=self.user, updated_by=self.user, topic_post=topic_post, content=self.cleaned_data['content'], reply_on=self.parent) post.topic = topic if commit: post.save() if topic_post: topic.post = post topic.content = post.content topic.save() return post