我在用django 1.5.4
下面是我所面临问题的一个极小的例子。
模式:
#models.py
from django.db import models
class SampleModel(models.Model):
spam = models.BooleanField()
表格:
#forms.py
from django.forms import ModelForm
from .models import SampleModel
class SampleModelForm(ModelForm):
class Meta:
model = Sample
我觉得这看起来很琐碎,很惊讶。
我所拥有的
我有一个Django模型+表单(ModelForm)。
我的用户填写了表单,在我看来,我通常有:
if request.POST:
form = myForm(request.POST)
if request.method == "POST" and form.is_valid():
result = form.save(commit=False)
现在,我需要大量地操作表单的一些字段(在“结果”对象中),在保存之前,我想再次检查表单is_valid()。
问题
我尝试使用字典(如建议
我是Django和web开发的新手。我使用一个表单集将数据保存到数据库中。创建部分工作正常,但当我尝试使用formsets更新数据库中的现有数据时,我将面临一些问题。
下面是相关的代码片段:
模型:
from django.db import models
class GradingSchemeName(models.Model):
name = models.CharField(max_length=250, null=False, blank=False, unique=True)
class GradingScheme(models.Model):
scheme_na
我正在学习使用Django,并想验证表单提交中的电子邮件地址。
这是我现在的表单代码:
from django.forms import ModelForm
from django.core import validators
from first_app.models import FormSubmission
from django import forms
class SignupForm(ModelForm):
class Meta:
model = FormSubmission
fields ='__all__'
我有一个具有字段num=models.IntegerField()的模型M
对于模型M,我有一个名为F的模型表单。
我想确保num永远不是负数。
如果我在我的表单类F中做验证,那么我可以做clean_num():如果是否定的,那么抛出ValidationError('Num can never be negative')。此ValidationError将自动重新显示给用户,方法是将用户重定向到他提交的表单,并在num字段的顶部显示“Num can never be negative”消息。只要我从clean_fieldname方法中抛出ValidationError,djan
在我的django项目中,我有两个相关的模型“Vehicle”(父模型)和ParamConf(子模型)。ParamConf有字段"program“,我想修复其中的一些错误的值。
(admin.py):
class ParamConfFormSet(BaseInlineFormSet):
def clean(self):
super(ParamConfFormSet, self).clean()
for form in self.forms:
if hasattr(form, 'cleaned_data')
我是Django的新手,在我的代码中,当我从邮递员那里得到这个错误时,有人能帮我吗?我的代码有什么问题?
模型:
from django.db import models
class GroupModel(object):
title=models.CharField(max_length=20)
description = models.CharField()
class Meta:
db_table = 'group'
def __str__(self):
return self
序列化器:
from r
我正在尝试为我的表单编写一个is_valid方法,并使用以下通用策略:
def is_valid(self):
form = super(UserCreateForm, self).is_valid()
for f, error in self.errors.iteritems():
if f!= '__all__':
self.fields[f].widget.attrs.update({'class': 'error', 'value': strip_tags(error
我有一个web报告,它使用Django表单(新表单)作为字段,这些字段控制用于生成报告的查询(开始日期、结束日期等)。我遇到的问题是,页面应该使用表单的初始值(未绑定)工作,但除非调用is_valid(),否则无法访问cleaned_data字段。但是is_valid()在未绑定的表单上总是失败。
Django的表单似乎是针对编辑数据的用例而设计的,因此未绑定的表单除了显示HTML之外,实际上没有什么用处。
例如,如果我有:
if request.method == 'GET':
form = MyForm()
else:
form = MyForm(reque
表单集is_valid返回"True,但当表单类只有一个字段时,该字段为空。
我用"python manage.py shell“做了这个例子。
如您所见,当"ArticleForm“类只有标题字段时,表单集的is_valid函数返回"True”。
我看到有人因为这个问题而使用has_changed函数。
但我不认为这是解决这个问题的好方法。
from django import forms
from django.forms.formsets import formset_factory
class ArticleForm(forms.Form):
我目前遇到了一个我无法解决的问题。
我给自己写了一个简单的表单来更新用户的密码。在构造函数中,如果出现错误,我想在输入字段中添加一个特定的类。基本上,这是在POST请求之后发生的,并且一旦我验证了表单。
全班:
class UpdatePasswordForm(forms.Form):
"""
This form is used at two places:
- A user has been logged out and needs to reset the password
- A user is in the con
我似乎无法使用.is_valid()验证我的表单
关联的视图
def edit_social_media(request, user_id):
#verify a user is allowed to access the page
# user is saving the form
if request.POST:
form = SocialMediaForm(request.POST)
if form.is_valid():
...
return HttpResponseRedirect(reverse(users.profile,
假设我有一个django模型播放器。Player模型有一个文件名“points”,一个整数字段。我需要显示前10名球员按分数在from.ModelChoiceField。
查询集将是
Player.objects.all().order_by('-points')[:10]
但是,如果在queryset上使用切片(它将被设置为form字段),则在单击submit按钮时会引发错误。
Cannot filter a query once a slice has been taken.
有办法解决这个问题吗?
我有一个非常简单的Django杂货列表应用程序,我正在使用它来学习框架,我使用一个模型集来显示/编辑/添加列表中的项目。我遇到的问题是,当我试图对表单集发布更改时,它会失败.is_valid()条件。formset.errors响应是[{' id ':‘这个字段是必需的。’},{}],但是所有的文档/web都说不要弄乱自动生成的ID字段,所以我不确定它为什么不工作/为什么不生成ID字段。
models.py
from django.db import models
# Create your models here.
class Grocery(models.Model):
我有一个django模型,看起来像这样: class MyModel(models.Model):
a = models.BooleanField(default=False)
b = models.CharField(max_length=33, blank=False)
c = models.CharField(max_length=40, blank=True) 和相应的表单 class MyForm(ModelForm):
class Meta:
model = MyModel 要求用户填写表单是一个两阶段的过程。首先,我问a是真还是假