1đź‘Ť
No, I don’t believe there’s any support for what you’re asking for in Django at present. The docs you linked to for flatpages say:
A flatpage is a simple object with a URL, title and content. Use it for one-off, special-case pages, such as “About” or “Privacy Policy” pages, that you want to store in a database but for which you don’t want to develop a custom Django application.
My reading of this is “this is the bare minimum we’re providing, and if you want any more you’ll have to code it yourself”. I agree that your proposal of allowing pages to be referred to by a symbolic name (which perhaps defaults to their URL) is more flexible, but you’re probably better off raising an issue for it or discussing on the mailing list than hoping a dev happens upon your question on StackOverflow.
In the short term, you could look at some of the pre-built CMS-like Django apps. Django-page-cms is relatively lightweight (it’s a relatively small app itself but does have a bunch of dependencies) and you could accomplish what you’re after: each page is referred to by its slug (aka url / name), but you can define aliases / redirects to given pages for arbitrary URLs.