我正在做以下工作:

model._meta.get_field('g').get_internal_type

它返回以下内容:

<bound method URLField.get_internal_type of <django.db.models.fields.URLField: g>>

我只想知道这个字段是"URLField".我如何从这个输出中提取出来呢?

Note: I am doing this so that I can do validation on the fields. For example if a url , I want to check if it is well formed.

推荐答案

如果你这样做:

model._meta.get_field('g').get_internal_type()

因此,你不可能得到那样的结果.

相反,您正在执行以下操作:

model._meta.get_field('g').get_internal_type

如所解释的here,其不调用该方法,它仅将该方法引用为绑定方法对象.返回值不是绑定方法对象的一部分,它是在调用方法时由方法创建的.所以,你得把它叫停.所以你需要括号.

Django相关问答推荐

为什么当对字段使用自定义序列化器时,Django Rest框架中Inbox字段会消失?

如何在Django模板中获取组中对象的整体计数器(&Q;)?

Urls.py中路径**kwargs的Django翻译?

当使用django-tinymce时,我在哪里指定referer?

Django中的DateTimeField到DateField

Django 和 HTML 无法从指定时间开始视频

在 Django Admin change_list 视图中更改 list_editable 字段时保存 Django 模型

Django 过滤器:过滤隐藏在多层模型 struct 中的对象

未为部署的 django rest 框架加载静态文件

Django 模板:翻译带有 HTML 的文本块的最佳实践

Django 从 url 保存图像并与 ImageField 连接

Django聚合:仅求和返回值?

is_valid() vs clean() Django 表单

Django:如何使用动态(非模型)数据预填充 FormView?

使用 Django 1.5 实现多种用户类型

如何使用 django-nose 运行单个测试或单个 TestCase?

如何在不发送信号的情况下保存模型?

get_or_create() 是否必须立即保存?

Django Rest Framework 序列化程序中的循环依赖

如何从 django 请求中获取完整的 url