diff options
Diffstat (limited to 'tests/model_permalink/models.py')
-rw-r--r-- | tests/model_permalink/models.py | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/model_permalink/models.py b/tests/model_permalink/models.py new file mode 100644 index 0000000000..dacf2a3fb3 --- /dev/null +++ b/tests/model_permalink/models.py @@ -0,0 +1,24 @@ +from django.db import models + + +def set_attr(name, value): + def wrapper(function): + setattr(function, name, value) + return function + return wrapper + + +class Guitarist(models.Model): + name = models.CharField(max_length=50) + slug = models.CharField(max_length=50) + + @models.permalink + def url(self): + "Returns the URL for this guitarist." + return ('guitarist_detail', [self.slug]) + + @models.permalink + @set_attr('attribute', 'value') + def url_with_attribute(self): + "Returns the URL for this guitarist and holds an attribute" + return ('guitarist_detail', [self.slug]) |