微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

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

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

我想创建的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 举报,一经查实,本站将立刻删除。