zoukankan      html  css  js  c++  java
  • 访问user Model的三种方式

    一、最常规,不定制custom的方式

    from django.contrib.auth.models import User
    
    class Post(models.Model):
        author = models.ForeignKey(User, on_delete=models.CASCADE)
        title = models.CharField(max_length=50)
        body = models.TextField()

    二、custom user

    # settings.py
    AUTH_USER_MODEL = `users.CustomUser`

    然后在model这样写

    from django.conf import settings
    from django.db import models
    
    class Post(models.Model):
        author = models.ForeignKey(
          settings.AUTH_USER_MODEL,
          on_delete=models.CASCADE
        )
        title = models.CharField(max_length=50)
        body = models.TextField()

    三、不管是不是定制,通用的写法:get_user_model

    # settings.py
    AUTH_USER_MODEL = `users.CustomUser`

    model.py这样写

    from django.contrib.auth import get_user_model
    from django.db import models
    
    class Post(models.Model):
        author = models.ForeignKey(
          get_user_model(),
          on_delete=models.CASCADE
        )
        title = models.CharField(max_length=50)
        body = models.TextField()

    get_user_model()会返回当前使用的用户,不论是定制还是系统默认用户。AUTH_USER_MODEL只针对定制用户。

     
  • 相关阅读:
    [hdu4436 str2int]后缀自动机SAM(或后缀数组SA)
    bytedance专题
    LSTM+CRF维特比解码过程
    spark core类梳理
    spark源码阅读---Utils.getCallSite
    python2.7官方文档阅读笔记
    cs224d---词向量表示
    cs231n---强化学习
    cs231n---生成模型
    Spring 2017 Assignments3
  • 原文地址:https://www.cnblogs.com/lxgbky/p/13201152.html
Copyright © 2011-2022 走看看