[英]Permission for logged in user steps
我正在创建一个带有食谱的应用程序。 现在我想让登录用户可以自己添加食谱。 我知道我必须为此用户创建一些权限,但我不知道如何。 我不需要任何代码,我只是想知道您是否可以给我一些必须要做的指导。 我是否必须向我的模型添加一些用户并创建 permission.py?
我的型号:
from django.db import models
class Ingredient(models.Model):
ingredient_name = models.CharField(max_length=250)
def __str__(self):
return self.ingredient_name
class Recipe(models.Model):
recipe_name = models.CharField(max_length=250)
preparation = models.CharField(max_length=1000)
ingredients = models.ManyToManyField(Ingredient)
def __str__(self):
return self.recipe_name
行政:
from django.contrib import admin
from .models import Recipe
from .models import Ingredient
admin.site.register(Recipe)
admin.site.register(Ingredient)
使用基于函数的视图,可以在创建配方时添加这些检查
def recipe_create(request):
if not request.user.is_staff or not request.user.is_superuser:
raise Http404
if not request.user.is_authenticated:
raise Http404
form = RecipeForm(request.POST or None)
if form.is_valid():
instance = form.save(commit=False)
instance.save()
return HttpResponseRedirect(instance.get_absolute_url())
context = {
"form": form,
}
return render(request, "recipe_form.html", context)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.