Python 在Django Shell中,如何从模型调用方法?

Python 在Django Shell中,如何从模型调用方法?,python,django,shell,django-1.5,Python,Django,Shell,Django 1.5,我有一个简单的模型,像 from django.db import models class Publisher(models.Model): name = models.CharField(max_length=30) address = models.CharField(max_length=50) city = models.CharField(max_length=60) state_province = models.CharField(max_len

我有一个简单的模型,像

from django.db import models

class Publisher(models.Model):
    name = models.CharField(max_length=30)
    address = models.CharField(max_length=50)
    city = models.CharField(max_length=60)
    state_province = models.CharField(max_length=30)
    country = models.CharField(max_length=50)
    website = models.URLField()

    def getJustDomainName(self):
        """ for example, if website is http://www.someweb.com/index.html, return someweb.com """
        return '0'; #TODO
我实际上并没有在这里实现getJustDomainName方法,因为我只是把它作为一个例子

我想在Django Shell中测试这个方法。所以我试着做一些类似的事情

Publisher.objects.all()[0].getJustDomainName
但作为回报,我得到了

<bound method Publisher.getJustWebsiteName of <Publisher: Publisher(#1): RandomHouse>>
这不是我所期望的。我期望并期望得到一个返回函数返回的结果


如何从shell正确调用此模型方法?

您没有调用此方法。您需要执行以下操作:

Publisher.objects.all()[0].getJustDomainName()

请注意结尾处的括号。您现在的操作方式只需打印方法本身,感谢您的奖励提示: