在django中保存时如何将模型与当前用户关联
我是django的新手,很抱歉这个简单的问题。我正在使用django构建web应用程序。我想在当前登录用户自动创建任何新对象时保存该用户。我想在自定义管理面板中实现此功能在django中保存时如何将模型与当前用户关联,django,Django,我是django的新手,很抱歉这个简单的问题。我正在使用django构建web应用程序。我想在当前登录用户自动创建任何新对象时保存该用户。我想在自定义管理面板中实现此功能 class Post(models.Model): user = models.ForeginKey(...) ............. 所以这里我想自动填充用户字段 您可以直接引用用户模型 from django.contrib.auth.models import User from django.db i
class Post(models.Model):
user = models.ForeginKey(...)
.............
所以这里我想自动填充用户字段 您可以直接引用用户模型
from django.contrib.auth.models import User
from django.db import models
class Post(models.Model):
user = models.ForeginKey(User, on_delete=models.CASCADE)
或者,您可以使用AUTH\u USER\u MODEL
设置(建议这样做)
在通用创建视图中,您可以将请求.user
与表单\u valid
方法中的对象相关联,如下所述
如何保存post对象?@NalinDobhal使用通用的创建视图,您可以在
表单\u valid
方法中访问请求.user
from django.conf import settings
from django.db import models
class Post(models.Model):
user = models.ForeginKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
class PostView(CreateView):
def form_valid(self, form):
obj = form.save(commit=False)
obj.user = self.request.user
obj.save()
return http.HttpResponseRedirect(self.get_success_url())