- Author:
- s29
- Posted:
- December 10, 2014
- Language:
- Python
- Version:
- Not specified
- Score:
- 0 (after 0 ratings)
A "fake" model field which is an alias to another underlying database field.
Mirrors everything including queryset lookups, instance attributes, even if the field has been used on the model already (this isn't possible just by using db_column).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | class AliasField(models.Field):
def contribute_to_class(self, cls, name, virtual_only=False):
super(AliasField, self).contribute_to_class(cls, name, virtual_only=True)
setattr(cls, name, self)
def __get__(self, instance, instance_type=None):
return getattr(instance, self.db_column)
class Order(models.Model):
"""
The main order model
"""
number = AliasField(db_column='id')
|
More like this
- csrf test by zukosdead 1 month, 2 weeks ago
- find even number by Rajeev529 9 months, 3 weeks ago
- Form field with fixed value by roam 10 months, 2 weeks ago
- New Snippet! by Antoliny0919 10 months, 3 weeks ago
- Add Toggle Switch Widget to Django Forms by OgliariNatan 1 year, 1 month ago
Comments
Please login first before commenting.