0

get_slug私は定義を含むモデルを持っています:

def Specimen(models.Model):
    ...
    def get_slug(self):
        return '%s/%s-%d' % (slugify(self.longname),self.collection.collection_code, self.accessionnumber) 

私の見解では、これをやりたい:

 def show_detail(request):
    specimens = Specimen.objects.filter(...)
    specimen_data = []
    for s in specimens:
        specimen_tuple = (str(s.get_slug), format(s.latdecimal), format(s.longdecimal))
        specimen_data.append(related_tuple) 

    context['specimen_data'] = simplejson.dumps(specimen_data)

しかし、jsでスラッグを使って何かをしようとすると(シェルでも同じ結果になりますが)<bound method Specimen.get_slug of <Specimen: Specimen object>>、スラッグの代わりに次のようなものが見つかります。

JSON に渡す前にメソッドを強制的に評価するにはどうすればよいですか?

どんな助けでも大歓迎です。

4

1 に答える 1

2

実際にメソッドを呼び出すように置き換えs.get_slugてみてください。s.get_slug()

于 2012-05-31T23:19:59.467 に答える