作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我曾经把自定义的用户相关字段放在一个新的 UserProfile
中类,但现在我在另一个项目中看到可以使用 contribute_to_class
模型字段的方法,以便能够将新字段附加到 auth.User
模型。
每种方法的优点和缺点是什么?
最佳答案
最大的大概就是contribute_to_class
未记录在案,并且 Django 文档非常清楚地表明批准的方法是使用配置文件向 User
添加其他数据。 . Python 是一种非常强大的语言,它可以让您做一些“聪明”的事情来实现一些期望的目标。但是,惯例可以引导您远离黑暗面。
如果有一个可靠的、合理的、必要的理由来使用 contribute_to_class
而不是配置文件,那么也许就可以了。我不完全确定这样的原因是什么,但也许你能证明这种方法的某种性能改进对于需要高性能的应用程序来说是必要的。
然而,更有可能的是,如果它们存在的话,这种情况将很少见。抛开其他一切,遵循惯例。
关于Django 身份验证 : UserProfile vs. 贡献_to_class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7267430/
我是一名优秀的程序员,十分优秀!