推荐学习书目
› Learn Python the Hard Way
Python Sites
› PyPI - Python Package Index
› http://diveintopython.org/toc/index.html
› Pocoo
值得关注的项目
› PyPy
› Celery
› Jinja2
› Read the Docs
› gevent
› pyenv
› virtualenv
› Stackless Python
› Beautiful Soup
› 结巴中文分词
› Green Unicorn
› Sentry
› Shovel
› Pyflakes
› pytest
Python 编程
› pep8 Checker
Styles
› PEP 8
› Google Python Style Guide
› Code Style from The Hitchhiker's Guide
pykwokcc
V2EX  ›  Python

关于 Django auth_user 表字段扩展,大家能不能给些好的建议呢?

  •  
  •   pykwokcc · Apr 23, 2014 · 7684 views
    This topic created in 4557 days ago, the information mentioned may be changed or developed.
    新手初学Django, 发现Django自带的auth_user表字段太少, 比如我想给user增加一个'avatar'字段来表示用户头像。网上搜了一下说新建一张profile表来存放额外字段,并且与auth_user建立一对一的关系。 想问问大家有没有什么好的建议。 我用的是Django1.6版本。
    7 replies  •  1970-01-01 08:00:00 +08:00
    ericFork
        1
    ericFork  
       Apr 23, 2014   ❤️ 1
    官方推荐的方式就是这样,另外推荐 django-profiletools,可以省不少事
    zeq
        2
    zeq  
       Apr 23, 2014   ❤️ 1
    1.5以上版本已经不支持AUTH_PROFILE_MODULE方式来扩展用户模型了.
    可以尝试用AUTH_USER_MODEL来扩展.https://docs.djangoproject.com/en/dev/topics/auth/customizing/#auth-custom-user
    aggron
        3
    aggron  
       Apr 23, 2014   ❤️ 1
    如果你要保留自带User表中的字段,直接继承就好了
    from django.contrib.auth.models import AbstractUser

    class User(AbstractUser):
    avatar = models.URLField(blank=True)
    website = models.URLField(blank=True)

    然后setttings.py中增加
    AUTH_USER_MODEL = 'yourAppName.User'
    具体可以看AUTH_USER_MODEL的相关文档
    xiawinter
        4
    xiawinter  
       Apr 23, 2014
    avatar 未来可能要扩展, 不是加个字段。 我的经验是不要这么整了, avatar 独立出来一个 app, 在 app 里来写 avatar 逻辑。

    如果你在 auth_user 加了字段,哪里写 avatar 上传,剪切的代码呢?

    加个 app 什么都搞定了
    pykwokcc
        5
    pykwokcc  
    OP
       Apr 23, 2014   ❤️ 1
    @xiawinter 你的建议不错,但是 如果我在 auth_user 加了字段,为什么不能实现上传和裁剪了呢,应该是可以实现的吧
    pykwokcc
        6
    pykwokcc  
    OP
       Apr 23, 2014
    @aggron 发现你说的方法可以,刚刚试了下,就是我需要达到的样子,谢啦
    xiawinter
        7
    xiawinter  
       Apr 23, 2014
    @pykwokcc 你代码放什么地方?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   5647 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 72ms · UTC 07:34 · PVG 15:34 · LAX 00:34 · JFK 03:34
    ♥ Do have faith in what you're doing.