def handle_request(self, post_id): if not current_user.is_author(): return redirect(url_for('index')) post = Post.objects(id=ObjectId(post_id)).first() if request.method == 'POST': post.title = request.form['title'] post.slug = request.form['slug'] post.body = request.form['body'] post.save() return redirect(url_for('post', slug=post.slug)) else: return render_template('post_create_edit.html', post=post, **self.context)
def handle_request(self, post_id): post = Post.objects(id=ObjectId(post_id)).first() if current_user.is_admin(): if request.method == 'POST': delete_text = request.form['delete-text'] print(delete_text) if delete_text == 'DELETE': post.delete() return redirect(url_for('posts')) else: error = "Confirmation text was not correct." return render_template('post_delete.html', post=post, error=error, **self.context) else: return render_template('post_delete.html', post=post, **self.context) else: return redirect(url_for('posts'))
def postCount(self): #Import here to prevent circular imports from laserpony.models.post import Post posts = Post.objects(project=self) return len(posts)
def handle_request(self, slug): project = Project.objects.get_or_404(slug=slug) posts = Post.objects(project=project).order_by('-created_at').all() return render_template('project.html',project=project,posts=posts, **self.context)