Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.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 如何在包含标记中传递请求对象?_Python_Django_Django Context - Fatal编程技术网

Python 如何在包含标记中传递请求对象?

Python 如何在包含标记中传递请求对象?,python,django,django-context,Python,Django,Django Context,我正在使用django 1.5 我想将请求对象传递给我的包含标记,但是得到一个错误,Key error 我的看法是: class IglesiaCreateView(CreateView): model = Iglesia template_name = 'iglesia/iglesia_form.html' success_url = reverse_lazy('iglesia_list') form_class = IglesiaForm d

我正在使用django 1.5

我想将请求对象传递给我的包含标记,但是得到一个错误,Key error

我的看法是:

class IglesiaCreateView(CreateView):
     model = Iglesia
     template_name = 'iglesia/iglesia_form.html'
     success_url = reverse_lazy('iglesia_list')
     form_class = IglesiaForm

    def get_form_kwargs(self):
        kwargs = super(IglesiaCreateView, self).get_form_kwargs()
        kwargs['request'] = self.request
        return kwargs
我的表格是:

class IglesiaForm(forms.ModelForm):
    class Meta:
        model = Iglesia
        fields = ('nombre', 'principal', 'parroquia')

    def __init__(self, *args, **kwargs):
        self.request = kwargs.pop('request', None)
        super(IglesiaForm, self).__init__(*args, **kwargs)
        parroquia = self.request.session.get('parroquia')
        self.fields['parroquia'].queryset = Parroquia.objects.filter(pk=parroquia.pk)
        self.fields['parroquia'].empty_label = None
我的入选标签是:

from myapp.forms import IglesiaForm
@register.inclusion_tag('includes/iglesia_ajax_form.html', takes_context=True)
    def iglesia_ajax(context):
    request = context['request']
    form_iglesia = IglesiaForm()
    ctx = {'form_iglesia': form_iglesia}
    return ctx
我有一个错误:

Django Version: 1.5.1
Exception Type: KeyError
Exception Value: 'request'
编辑:

问题解决

我在模板中添加了如下内容:“django.core.CONTEXT\u PROCESSORS.request”

和变化:

form_iglesia = IglesiaForm()
form_iglesia = IglesiaForm()
致:

感谢您的帮助

更改此行

致:


看看这是否有效。

我看不出您的标签和您显示的模型表单之间的关系。请说清楚。我在我的包含标签中使用了:form_iglesia=IglesiaForm(),我刚刚在模板_CONTEXT_处理器中添加了以下内容:“django.core.CONTEXT_PROCESSORS.request”,它成功了。它起作用了吗?。这行代码影响我的应用程序的行为?这行代码将请求变量添加到每个模板的每个上下文中。我以为你已经这么做了。很抱歉
form_iglesia = IglesiaForm()
form_iglesia = IglesiaForm(request=request)