Python 一个类的结果如何可以在另一个类中使用

Python 一个类的结果如何可以在另一个类中使用,python,django,Python,Django,类SearchResultsView(ListView): 模型=用户 template_name='all_users/doctor/search.html' def get_queryset(self): # new query = self.request.GET.get('q') object_list = User.objects.filter(Q(username__icontains=query)) return object_list class Po

类SearchResultsView(ListView): 模型=用户 template_name='all_users/doctor/search.html'

def get_queryset(self):  # new
    query = self.request.GET.get('q')
    object_list = User.objects.filter(Q(username__icontains=query))
    return object_list

class PostCreateView(LoginRequiredMixin, CreateView):
    template_name = 'all_users/doctor/post_form.html'
    model = Post
    fields = ['title', 'content']

    def form_valid(self, form):
        form.instance.author = self.request.object_list
        return super().form_valid(form)

尝试在创建视图中添加获取上下文数据并传递到模板

def get_context_data(self, **kwargs):
    query = self.request.GET.get('q')
    context['object_list'] = User.objects.filter(Q(username__icontains=query))
    return context

或者在表单模板中,使用搜索url添加带有操作属性的表单标记

谢谢您的建议。我尝试了这个方法,它不起作用,但使用相同的逻辑,我得到了object_list的值。是否有任何方法将对象列表值转换为“用户”实例。要代替form.instance.author=object\u列表保存数据,如果是另一个问题,请在stackoverflow.user上单独提问。您可以从form.instance.author=self.request.userYes form.instance.author=self.request.user获取数据。用户将数据保存在登录用户id下,但我希望它保存在搜索结果[query=self.request.get.get('q')下object\u list=User.objects.filter(Q(username\u icontains=query))]用户id。当我尝试使用object\u list代替self.request.User时,它给出了一个错误,即它必须是“User”实例。我想知道是否可以这样做,或者是否有其他方法可以这样做