我有一个文章数据库
submitter = models.ForeignKey(User, editable=False)
其中 User
导入如下:
from django.contrib.auth.models import User.
当特定用户提交文章时,我想自动将当前活动用户插入提交者字段。
有人有什么建议吗?
原文由 FurtiveFelon 发布,翻译遵循 CC BY-SA 4.0 许可协议
我有一个文章数据库
submitter = models.ForeignKey(User, editable=False)
其中 User
导入如下:
from django.contrib.auth.models import User.
当特定用户提交文章时,我想自动将当前活动用户插入提交者字段。
有人有什么建议吗?
原文由 FurtiveFelon 发布,翻译遵循 CC BY-SA 4.0 许可协议
假设用户 B 保存了用户 A 创建的记录。通过使用上述方法,记录将与用户 B 一起保存。在某些情况下,这可能不是最佳选择,因为保存该记录的每个用户都将“窃取”它。有一个解决方法,它只会保存用户一次(创建它的人):
模型.py
from django.contrib.auth.models import User
class Car(models.Model):
created_by = models.ForeignKey(User,editable=False,null=True,blank=True)
car_name = models.CharField(max_length=40)
管理员.py
from . models import *
class CarAdmin(admin.ModelAdmin):
list_display = ('car_name','created_by')
actions = None
def save_model(self, request, obj, form, change):
if not obj.created_by:
obj.created_by = request.user
obj.save()
原文由 Lourenzo Costa 发布,翻译遵循 CC BY-SA 3.0 许可协议
2 回答5.1k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
4 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
1 回答1.7k 阅读✓ 已解决
1 回答1.2k 阅读✓ 已解决
以防万一有人在寻找答案,这是我在这里找到的解决方案:http: //demongin.org/blog/806/
总结一下:他有一个 Essay 表,如下所示:
其中multiuser可以创建论文,所以他创建了一个admin.ModelAdmin类,如下: