Django:使用GET将额外变量传递给LoginView?
我需要将2个变量传递到我的LoginView,我使用的是Django 3.0 我有一个模板,有两个按钮,一个用于客户,一个用于卖家。根据单击的内容,我需要在Django:使用GET将额外变量传递给LoginView?,django,Django,我需要将2个变量传递到我的LoginView,我使用的是Django 3.0 我有一个模板,有两个按钮,一个用于客户,一个用于卖家。根据单击的内容,我需要在GET调用中发送typeofuser 这是发送GET中变量的模板: {% block content %} <h2>Ingresar con tu cuenta</h2> <p class="lead">Selecciona qué tipo de usuario eres</p>
GET
调用中发送typeofuser
这是发送GET中变量的模板:
{% block content %}
<h2>Ingresar con tu cuenta</h2>
<p class="lead">Selecciona qué tipo de usuario eres</p>
<a href="{% url 'core:login' %}?typeofuser=cliente" class="btn btn-primary btn-lg" role="button">Soy un cliente</a>
<a href="{% url 'core:login' %}?typeofuser=vendedor" class="btn btn-secondary btn-lg" role="button">Soy un vendedor</a>
{% endblock %}
我还尝试了这一行来获取上下文:
context = super(LoginView, self).get_context_data(**kwargs)
context = super(LoginView).get_context_data(**kwargs)
但我得到了:
TypeError: 'NoneType' object is not callable
使用此选项获取上下文:
context = super(LoginView, self).get_context_data(**kwargs)
context = super(LoginView).get_context_data(**kwargs)
返回
'super' object has no attribute 'get_context_data'
更新1:
[08/Feb/2020 11:02:29] "GET /ingresar-cliente-vendedor/ HTTP/1.1" 200 20812
Internal Server Error: /ingresar/
Traceback (most recent call last):
File "D:\virtual_envs\scolarte\lib\site-packages\django\core\handlers\exception.py", line 34, in inner
response = get_response(request)
File "D:\virtual_envs\scolarte\lib\site-packages\django\core\handlers\base.py", line 115, in _get_response
response = self.process_exception_by_middleware(e, request)
File "D:\virtual_envs\scolarte\lib\site-packages\django\core\handlers\base.py", line 113, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "D:\virtual_envs\scolarte\lib\site-packages\django\views\generic\base.py", line 71, in view
return self.dispatch(request, *args, **kwargs)
File "D:\virtual_envs\scolarte\lib\site-packages\django\views\generic\base.py", line 97, in dispatch
return handler(request, *args, **kwargs)
File "D:\virtual_envs\scolarte\lib\site-packages\django\views\generic\edit.py", line 133, in get
return self.render_to_response(self.get_context_data())
File "D:\web_proyects\scolarte\core\views.py", line 31, in get_context_data
context = super().get_context_data(**kwargs)
File "D:\virtual_envs\scolarte\lib\site-packages\django\views\generic\edit.py", line 66, in get_context_data
kwargs['form'] = self.get_form()
File "D:\virtual_envs\scolarte\lib\site-packages\django\views\generic\edit.py", line 33, in get_form
return form_class(**self.get_form_kwargs())
TypeError: 'NoneType' object is not callable
[08/Feb/2020 11:02:31] "GET /ingresar/?typeofuser=cliente HTTP/1.1" 500 93091
视图类中未提供任何
表单类
属性,因此出现错误
class LoginView(SuccessURLAllowedHostsMixin, FormView):
form_class = MyLoginForm
# other code snippets
class LoginView(SuccessURLAllowedHostsMixin,FormView):
form_class=MyLoginForm
#其他代码段
错误'super'对象没有“get\u context\u data”属性
rased,因为您以错误的方式调用了super()
方法。但是错误TypeError:“NoneType”对象不可调用
很奇怪,你能添加错误回溯吗?@ArakkalAbu,请参见更新1。我添加了一个答案,请看一看