我正在运行Django v1.4。
我查看了django.contrib.django.comments
的源代码,发现Comment
类有一个可选的user
字段,它是Django User
的外键。我还使用我自己的User
扩展了UserProfile
,其中user_type
字段(使用official recommended approach)。
我想为每个工作单添加评论,但只允许某些user_type
发布评论。因此,我现在正考虑将Comment
扩展为做两件事:
Comment.user
必须是强制性的。user_type
可以发表评论。我知道我可能需要创建自己的类并继承Comment
,但我在设计中有几个问题:
Comment
(user_name
,user_email
,user_url
等)的所有可选字段吗?如果是这样,我应该使用User
中的信息添加它们吗?我觉得如果我添加它们,那就违反了数据规范化。UserProfle.user_type
来限制评论?我了解评论已加载到模板中,因此如何在模板中控制if
- then
块?这似乎违反了MVC模型设计(我觉得权限限制应该放在views.py
。任何提示,建议和参考,将不胜感激。提前致谢!到目前为止,我一直在使用关于customizing the comments framework的Django文档作为示例。