Это должно быть очень просто. В вашем файле urls.py вам нужен такой URL:
url(r'/resource/(?P<resource_name>\w+)', 'app.views.resource_func', name="priv-resource"),
Затем вы обрабатываете это в views.py
с помощью функции:
def resource_func(request, resource_name):
# look up resource based on unique string resource_name...
Наконец, вы можете использовать это и в своих шаблонах, используя имя:
{% url priv-resource string %}
Просто убедитесь, что в ваших models.py:
class ResourceModel(models.Model)
resource_name = models.CharField(max_size=somelimit, unique=True)
У меня может даже возникнуть желание использовать обработчик сигналов для автоматического создания этого поля после сохранения объекта. См. документацию .