Python Django-确定传递给模板标记的变量的字段类型
我想写一个Django模板标记,我可以向它传递一个变量 我希望模板标记的行为有所不同,这取决于变量是从哪种类型的模型字段(CharField、BooleanField、IntegerField等)以及字段定义中使用的其他信息(max_length等) 我可以按照以下文档轻松地将变量传递到模板标记: 是否有办法确定变量的原始模型字段的类名和模型参数 换句话说:我可以制作这样的标签吗:Python Django-确定传递给模板标记的变量的字段类型,python,django,variables,field,templatetags,Python,Django,Variables,Field,Templatetags,我想写一个Django模板标记,我可以向它传递一个变量 我希望模板标记的行为有所不同,这取决于变量是从哪种类型的模型字段(CharField、BooleanField、IntegerField等)以及字段定义中使用的其他信息(max_length等) 我可以按照以下文档轻松地将变量传递到模板标记: 是否有办法确定变量的原始模型字段的类名和模型参数 换句话说:我可以制作这样的标签吗: {% template_tag model.field %} 在标记渲染函数中,访问来自模型的信息 field
{% template_tag model.field %}
在标记渲染函数中,访问来自模型的信息
field = models.CharField(max_length=40)
您可以使用python的
type
函数来确定类类型
if type(field) == models.CharField:
#CharField specific code
elif type(field) == models.IntegerField:
#IntegerField specific code
4年后,但你确定。。。至少对于如何获取字段,models.CharField的类型是unicode