Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django,在泛型视图的form_有效函数中创建对象实例之前,如何获取对象实例(id)?_Python_Django_Model_Signals - Fatal编程技术网

Python Django,在泛型视图的form_有效函数中创建对象实例之前,如何获取对象实例(id)?

Python Django,在泛型视图的form_有效函数中创建对象实例之前,如何获取对象实例(id)?,python,django,model,signals,Python,Django,Model,Signals,当我创建Post模型对象时,我需要立即获取它的ID并创建第二个模型用户权限,在这种情况下,如何将新创建的Post的ID数据传递给Post变量 class CreatePostView(LoginRequiredMixin, CreateView): model = Post form_class = PostForm def form_valid(self, form): obj = User_permiss

当我创建Post模型对象时,我需要立即获取它的ID并创建第二个模型用户权限,在这种情况下,如何将新创建的Post的ID数据传递给Post变量

  class CreatePostView(LoginRequiredMixin, CreateView):
        model = Post
        form_class = PostForm

        def form_valid(self, form): 
                obj = User_permission.objects.create(post=post)
                obj.save()
            return super().form_valid(form)

对象在保存之前没有
id
s。你需要像这样的东西

    def form_valid(self, form): 
            response = super().form_valid(form) # saves object
            obj = User_permission.objects.create(post=self.object)
            obj.save()
            return response

在文档中显示了self.object的用法

如果让数据库自动生成object.id,则不能使用object.id。但您可以在保存数据时指定id。