给定一组典型模型:
# Application A
from django.db import models
class TypicalModelA(models.Model):
the_date = models.DateField()
# Application B
from django.db import models
class TypicalModelB(models.Model):
another_date = models.DateField()
...
如何将所有 DateField 的默认窗口小部件更改为自定义MyDateWidget?
我问是因为我希望我的应用程序具有用于输入日期的jQueryUI datepicker。
我考虑过使用自定义窗口小部件扩展django.db.models.DateField的自定义字段。这是实施这种全面变更的最佳方法吗?这样的更改将需要将特殊的MyDateField专门导入每个模型中,这是劳动密集型的,容易发生开发人员错误(例如,一些模型。DateField会通过),在我看来,这似乎是不必要的重复劳动。另一方面,我不喜欢修改可以认为是Model.DateField规范版本的内容。
的想法和意见表示赞赏。
你可以在ModelForm
类中声明一个名为的属性formfield_callback
。这应该是一个函数,它以Django模型Field
实例为参数,并返回一个表单Field实例以在表单中表示它。
然后,你要做的就是查看传入的模型字段是否是的实例DateField
,如果是,则返回你的自定义字段/小部件。否则,模型字段将具有一个名为的方法formfield
,你可以调用该方法以返回其默认表单字段。
因此,类似:
def make_custom_datefield(f):
if isinstance(f, models.DateField):
# return form field with your custom widget here...
else:
return f.formfield(**kwargs)
class SomeForm(forms.ModelForm)
formfield_callback = make_custom_datefield
class Meta:
# normal modelform stuff here...
问题内容: 我在数据库中有ISO 8601格式的日期%。但是,当日期传递到模板时,它显示为。 有没有一种方法可以将格式调整为我想要的格式? 问题答案: date settings.DATE_FORMAT
我正在尝试在Opportunity更改Stage Standard对象的默认值 我采取的步骤: 使用规则条件创建工作流规则机会:创建日期不等于null 评估标准在创建记录时评估规则。 将操作添加为字段更新,并为拾取列表选择值 激活规则 但是没有发生任何事情,因为默认值仍然是-NONE- 我错过了什么?作为salesforce新手,我也不想使用扳机或按钮。
问题内容: 我有一个JRE,那是我安装Eclipse时唯一的一个。随后,我在其中安装了完整的JDK 并将其环境变量更改为该变量。但是,每次我启动一个新的Eclipse工作区时,它只会拾取旧的JRE,我必须手动将其删除并添加新的JRE。 如何将Eclipse安装绑定到新的JDK,以便每个新的工作区都仅指向该文件夹?我检查了一下,但是那里没有提到要使用的JRE。 更新: 我进入s,添加了新位置,将其标
问题内容: 无论如何,是否可以在WCF中更改DateTime的默认JSON序列化/反序列化? 目前,DateTime已序列化为该格式,应该没问题,但是当我的服务器不在UTC中时(我无法更改),我遇到了问题。 此服务正在处理的所有日期/时间数据均为UTC格式。服务器处于UTC时一切正常。但是,暂存/生产环境设置为GMT + 1(Paris),并且序列化程序假定日期/时间在GMT + 1中,而完全忽略
问题内容: 我想做的是显示一个单一的表格,让用户: 输入文档标题(来自模型) 从下拉列表中选择一个选项(由模型填充) 输入(存储在模型中) 我不确定如何在表单中显示外键关系的字段。我知道在视图中你可以使用document.code_set(例如)访问当前document对象的相关对象,但是我不确定如何将其应用于ModelForm。 我的模特: 我的模型表格 问题答案: 关于以表格形式显示外键字段,
问题内容: 有没有办法在Swing GTK LaF中更改默认字体大小? GTK LaF似乎假定为72dpi,因此所有字体仅是使用96dpi屏幕时应具有的大小的3/4。有关详细信息,请参见此Fedora错误。在此同时,我想找到一种解决方法。 我已经尝试重置通过字体大小,推荐这里,例如,而是(因为也注意到有)的GTK的LaF似乎忽略这一点。 我 可以 建立一个小部件工厂,该工厂还将为创建所有Swing