- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
有人知道怎么回事吗?我有一个 wsgi
错误。我想添加一些信息来评分,特别是日期。但是,我收到此 wsgi
错误:
错误:
AttributeError at /polisy/add_paydate_form/35/
'WSGIRequest' object has no attribute 'get'
Request Method: GET
Request URL: http://127.0.0.1:8000/polisy/add_paydate_form/35/
Django Version: 1.7.7
Exception Type: AttributeError
Exception Value:
'WSGIRequest' object has no attribute 'get'
Exception Location: D:\praca\tiecase\lib\site-packages\django\forms\widgets.py in value_from_datadict, line 228
Python Executable: D:\praca\tiecase\Scripts\python.exe
Python Version: 3.4.0
Python Path:
['D:\\praca\\tiecase\\tiecase\\tlb',
'D:\\praca\\tiecase\\tiecase\\tlb',
'C:\\WINDOWS\\SYSTEM32\\python34.zip',
'D:\\praca\\tiecase\\DLLs',
'D:\\praca\\tiecase\\lib',
'D:\\praca\\tiecase\\Scripts',
'C:\\Python34\\Lib',
'C:\\Python34\\DLLs',
'D:\\praca\\tiecase',
'D:\\praca\\tiecase\\lib\\site-packages']
Server time: Tue, 28 Jul 2015 14:36:43 +0200
Error during template rendering
In template D:\praca\tiecase\lib\site-packages\crispy_forms\templates\bootstrap3\field.html, error at line 25
'WSGIRequest' object has no attribute 'get'
15
16 {% if field|is_checkboxselectmultiple %}
17 {% include 'bootstrap3/layout/checkboxselectmultiple.html' %}
18 {% endif %}
19
20 {% if field|is_radioselect %}
21 {% include 'bootstrap3/layout/radioselect.html' %}
22 {% endif %}
23
24 {% if not field|is_checkboxselectmultiple and not field|is_radioselect %}
25 {% if field|is_checkbox and form_show_labels %}
26 {% if label_class %}
27 <div class="controls col-lg-offset-{{ label_size }} {{ field_class }}">
28 {% endif %}
29 <label for="{{ field.id_for_label }}" class="{% if field.field.required %} requiredField{% endif %}">
30 {% crispy_field field 'class' 'checkbox' %}
31 {{ field.label|safe }}
32 {% include 'bootstrap3/layout/help_text_and_errors.html' %}
33 </label>
34 {% if label_class %}
35 </div>
pay_date_form.py
的内容:
import datetime
from crispy_forms.helper import FormHelper
from crispy_forms.layout import Layout, Div, Column, HTML, Submit, Field
from django.forms import ModelForm
from django import forms
from primer8_base.utils import get_or_none
from primer8_insurance_policy.models import PaymentRate
from tiecase.widgets import DateTimeWidget
class PayDateForm(ModelForm):
payment_date=forms.DateField(required=False,
input_formats=['%d-%m-%Y'],
widget=DateTimeWidget
)
def __init__(self, *args, **kwargs):
super(PayDateForm, self).__init__(*args, **kwargs)
self.helper = FormHelper(self)
self.helper.form_id="add_pay_date_form"
self.helper.form_class = 'form-horizontal'
self.helper.all().wrap(Field, css_class="input-block-level")
self.helper.layout = Layout(
Div(
Column(
HTML("<h3>Wprowadź datę opłacenia/h3>"),
css_class='col-md-10 col-md-offset-1'),
'payment_date'
))
self.helper.layout.append(
Submit('save', 'Dodaj', css_class='submit_ajax'))
class Meta:
model = PaymentRate
exclude = ['amount', 'due_payment_date', 'accounting_date','is_paid','num_of_payment']
这是一个 View :
@login_required
def add_pay_date_form(request, paymentrate_id):
template_name = "policy/pay_date_modal_form.html"
rate = get_object_or_404(PaymentRate, id=paymentrate_id)
form = PayDateForm(request, PaymentRate)
if request.method == "POST":
if form.is_valid():
form.save()
return JsonResponse({'success': True})
return render_to_response(template_name, {
'form': form,
'rate': rate
}, context_instance=RequestContext(request))
模板:
{% extends "base_form.html" %}
{% block "additional" %}
<script type="text/javascript">
$(document).ready(function(){
$("#{{form.name.auto_id}}").blur(function(){
if(!$('#{{form.short_name.auto_id}}').val()) {
$('#{{form.short_name.auto_id}}').val($("#{{form.name.auto_id}}").val());
}
});
});
$("#add_pay_date_form").submit(function (e) {
e.preventDefault();
var formData = new FormData($(this)[0]);
$.ajax({
type: 'POST',
async: false,
cache: false,
contentType: false,
processData: false,
url: '{% url "add_pay_date_form" paymentrate.id %}',
data: formData,
success: function (response, status, xhr) {
if (xhr.getResponseHeader('Content-Type') == 'application/json')
{ console.log(xhr.getResponseHeader('Content-Type'));
$.magnificPopup.close();
} else {
$('#{{ form.helper.form_id }}_panel').replaceWith(response);
}
}
});
console.log('test');
});
</script>
{% endblock "additional" %}
和网址:
url(r'add_paydate_form/(?P<paymentrate_id>\d+)/$', add_pay_date_form, name='add_pay_date_form'),
我有这个错误,我不知道为什么。也许扩展基本形式有问题?
最佳答案
这是错误的:
form = PayDateForm(request, PaymentRate)
您没有将request
对象传递给表单,您传递的是提交的表单数据,即
form = PayDateForm(request.POST, PaymentRate)
(解释一下:你得到的错误是因为 Django 期待一个类似 dict 的对象,所以它试图调用它的 get
方法来获取特定的数据键,因此 'WSGIRequest' 对象没有属性 'get'
)
所以你的 View 应该是这样的:
@login_required
def add_pay_date_form(request, paymentrate_id):
template_name = "policy/pay_date_modal_form.html"
rate = get_object_or_404(PaymentRate, id=paymentrate_id)
form = PayDateForm(request.POST or None, PaymentRate)
if form.is_valid():
form.save()
return JsonResponse({'success': True})
return render_to_response(template_name, {
'form': form,
'rate': rate
}, context_instance=RequestContext(request))
关于python - WSGIRequest 对象没有属性 get,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31676861/
如果我像这样制作上下文处理器: def add_external(request): context = {"stext":"this is the info"} return con
我在 views.py 文件中的这个函数中遇到了这个错误。这很令人困惑,因为我不知道“WSGIRequest”是什么,也不知道它为什么给我带来问题。我知道我有一个名为“newUser”的变量,因为当我
我在发布到API时遇到了麻烦,无法完全弄清该错误指的是什么。如果重要的话,我使用的是Django REST,并包含了回溯。 if (repeat == false) { post_data =
我已经制作了一个这样的身份验证类: Token Authentication for RESTful API: should the token be periodically changed? re
我正在尝试使用 Django 创建登录表单。我正在创建一个 View 女巫将处理登录的获取和发布请求。 这是我如何设计它的: class Login(View): def get(self,r
我正在尝试在我的 django 项目中创建一个身份验证模块。但是当我打开我的网站 url 时出现此错误:'WSGIRequest' object has no attribute 'user' 我试图
我有时会在 process_response 方法中的自定义中间件中收到此错误。我有以下中间件列表: MIDDLEWARE_CLASSES = [ 'django.middleware.common.
当我在自定义中间件类的 process_view 中执行 request.set_cookie() 时,我不断收到此异常。这是我的 settings.py 中中间件类的顺序: MIDDLEWARE_C
我正在尝试向 API 发出发布请求,并将结果保存到我的数据库表之一中。 这是我的代码。 这是我的模型。 patientId 是 MyUser 表的 userId 的外键 class MyUser(Ab
我有 Django1.9 中间件类: class MyMiddleware(object): def process_request(self, request): token
我已经针对类似问题尝试过一些解决方案,但没有一个有效: 'WSGIRequest' object has no attribute 'session' 'WSGIRequest' object has
我想制作一个应用程序,它可以获取 Excel 文件并读取其内容,而不使用表单和模型。 我不断收到标题中的错误,我想知道错误是什么。 这是我的 HTML: {% csrf_token %}
我正在我的 views.py 中检查用户是否经过身份验证。然而,Django 不断抛出异常 WSGIRequest 对象没有属性“is_authenticated”。我阅读了 stackoverflo
我正在尝试使用 curl 的 put 请求向本地服务器发出 put 请求: curl -X PUT -H "Content-Type: application/json" -d '{"connid":
我明白了AttributeError("'WSGIRequest' 对象没有属性 'args'",)当我尝试调用这个电话时 GET/sign_s3/?s3_object_type=image/jpeg
有人知道怎么回事吗?我有一个 wsgi 错误。我想添加一些信息来评分,特别是日期。但是,我收到此 wsgi 错误: 错误: AttributeError at /polisy/add_payd
我正在制作一个网页。有两种看法。 索引 和详细信息。在索引中,我使用 response.set_cookie('key', key) 为用户设置 cookie,其中 response = HttpRe
关闭。这个问题是not reproducible or was caused by typos .它目前不接受答案。 这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topi
我正在尝试用 Django 制作一个非常基本的网站。现在你只需输入你的名字,它就会被保存。但即使我按照说明进行操作 here它抛出错误 'WSGIRequest' object has no attr
这个问题已经有答案了: Django - Where are the params stored on a PUT/DELETE request? (8 个回答) 已关闭 7 年前。 def my_v
我是一名优秀的程序员,十分优秀!