如何在 python django 中实现用于发布博客的管理员批准系统
how to implement an admin approval system for posting blogs in pythondjango
我正在建立一个用户来登录的网站,登录后用户发布经管理员批准的文章。我不知道怎么做。我制作了一个用户可以登录的用户身份验证系统。但我不知道如何让他 post 获得管理员批准的数据。
不错。您可以通过向数据库中添加一个新列来启用此功能,例如 onapproval
将其设置为布尔变量,例如 0 或 1,true 或 false。然后检查它。如果是,您可以将状态设置为已批准,如果不是,则设置为未批准。同样的过程也会在管理面板中发生。
因此,您的模型中需要一个条件,以便能够查询要显示的批准对象(博客文章)。
基本方法如下所示:
创建一个模型来将博文及其逻辑存储到数据库
# models.py
class Blog_Post(models.Model):
text = models.CharField(max_length=500)
is_approved = models.BooleanField(default=False)
def __str__(self):
return self.name
在管理员中注册您的模型,以便您可以通过 django-admin
批准它们
from django.contrib import admin
from myproject.myapp.models import Blog_Post
admin.site.register(Blog_Post)
创建视图以仅获取管理员批准的博文
# views.py
def get_blog_post(request):
# Only fetch the blog posts that are approved
queryset = Blog_Post.objects.filter(is_approved=True)
return render(request, 'your_html.html', {'queryset' : queryset})
在您的模板中呈现博文
# your_html.html
{% for blog_post in queryset %}
<div>{{ blog_post.text }}</div>
{% endfor %}
我正在建立一个用户来登录的网站,登录后用户发布经管理员批准的文章。我不知道怎么做。我制作了一个用户可以登录的用户身份验证系统。但我不知道如何让他 post 获得管理员批准的数据。
不错。您可以通过向数据库中添加一个新列来启用此功能,例如 onapproval
将其设置为布尔变量,例如 0 或 1,true 或 false。然后检查它。如果是,您可以将状态设置为已批准,如果不是,则设置为未批准。同样的过程也会在管理面板中发生。
因此,您的模型中需要一个条件,以便能够查询要显示的批准对象(博客文章)。
基本方法如下所示:
创建一个模型来将博文及其逻辑存储到数据库
# models.py
class Blog_Post(models.Model):
text = models.CharField(max_length=500)
is_approved = models.BooleanField(default=False)
def __str__(self):
return self.name
在管理员中注册您的模型,以便您可以通过 django-admin
批准它们from django.contrib import admin
from myproject.myapp.models import Blog_Post
admin.site.register(Blog_Post)
创建视图以仅获取管理员批准的博文
# views.py
def get_blog_post(request):
# Only fetch the blog posts that are approved
queryset = Blog_Post.objects.filter(is_approved=True)
return render(request, 'your_html.html', {'queryset' : queryset})
在您的模板中呈现博文
# your_html.html
{% for blog_post in queryset %}
<div>{{ blog_post.text }}</div>
{% endfor %}