如何创建仅在作者是当前用户时显示的外键字段?

问题描述

如何创建只在作者是当前用户显示的外键字段

我想创建的admin只显示当前用户创建的key,外键受作者限制也是当前用户

models.py

class costomize_work_type(models.Model):
    author = models.ForeignKey(User,on_delete=models.CASCADE,editable=False,null=True)
    name = models.CharField(max_length = 10 )
    def __str__(self):
        return self.name

class Work(models.Model):
    name = models.ForeignKey(costomize_work_type,on_delete = models.CASCADE,limit_choices_to={'author': current user})
    #other choice
    author = models.ForeignKey(User,null=True)

admin.py

class costomize_work_typeAdmin(admin.ModelAdmin):
    def save_model(self,request,obj,form,change):
        obj.author = request.user
        super().save_model(request,change)
    def get_queryset(self,request):
        qs = super(costomize_work_typeAdmin,self).get_queryset(request)
        return qs.filter(author=request.user)

admin.site.register(costomize_work_type,costomize_work_typeAdmin)

class WorkAdmin(admin.ModelAdmin):
    def save_model(self,request):
        qs = super(WorkAdmin,self).get_queryset(request)
        return qs.filter(author=request.user)


admin.site.register(Work,WorkAdmin)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)