Tengo una propiedad en un modelo de Django que me gustaría exponer a través de un TastyPie ModelResource.Cómo exponer una propiedad (campo virtual) en un modelo de Django como un campo en un TastyPie ModelResource
Mi modelo es
class UserProfile(models.Model):
_genderChoices = ((u"M", u"Male"), (u"F", u"Female"))
user = Models.OneToOneField(User, editable=False)
gender = models.CharField(max_length=2, choices = _genderChoices)
def _get_full_name(self):
return "%s %s" % (self.user.first_name, self.user.last_name)
fullName = property(_get_full_name)
Mi ModelResource se
class UserProfileResource(ModelResource):
class Meta:
queryset = models.UserProfile.objects.all()
authorization = DjangoAuthorization()
fields = ['gender', 'fullName']
Sin embargo todo momento, me voy de la API se tastypie:
{
gender: 'female',
resource_uri: "/api/v1/userprofile/55/"
}
He intentado jugar con la propiedad fields en el ModelResource, pero eso no ha ayudado. Me encantaría entender lo que está pasando aquí.
no se pierda la 'U': volver u "% s% s" % (self.user.first_name, self.user.last_name) – dzen