A simple Django app to generate pages from files.
Project description
Mdpages is a simple Django app to generate pages from Markdown files.
Pages also can have a Table of Content automatically generated based on headings.
Quick start
Supposing you want to create an About page, having the markdown file at /pages/content/about.md.
Add “mdpages” to your INSTALLED_APPS setting like this:
INSTALLED_APPS = [
...
'mdpages',
]
Set the location of the directory that will contain the Markdown files in settings with MDPAGES_CONTENT_DIR:
MDPAGES_CONTENT_DIR = '{}/pages/content/'.format(BASE_DIR)
Add the template that will contain the Markdown generated content, you will have two variables available: body and toc (for the table of contents), for example create a template /templates/mdpages/page.html with contents like:
{% extends "base.html" %}
{% block title %}{{title}}{%endblock%}
{% block description %}{{description}}{%endblock%}
{% block content %}
<div class="container">
{{ toc|safe }}
<hr>
{{ body|safe }}
</div>
{% endblock %}
And add the template path to settings MDPAGES_TEMPLATE_NAME:
MDPAGES_TEMPLATE_NAME = 'mdpages/page.html'
Create a view using staticages.views.MdPageView specifying the name of the Markdown file md_file and the template_name:
from mdpages.views import MdPageView
class AboutView(MdPageView):
md_file = 'language-learning.md'
# any kind of extra content used in your template
extra_context = {
'title': 'About page',
'description': 'This is the about page of the site.'
}
Use it in your urls.py:
from .views import AboutView
urlpatterns = [
path('about', AboutView.as_view()),
]
Reference
Markdown library https://python-markdown.github.io/reference/
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file django-mdpages-0.2.tar.gz
.
File metadata
- Download URL: django-mdpages-0.2.tar.gz
- Upload date:
- Size: 3.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c01cd523cce3b34c2b24e1344f4391a8708aa4efe4e17042438bdea7d327b262 |
|
MD5 | 2d81b6817b2b1b2acbd65abefa4ddab9 |
|
BLAKE2b-256 | b18e56be8c66d188f6f5c1aae96b5d406f17d31c20c0f46c96dceb0c43763080 |
File details
Details for the file django_mdpages-0.2-py3-none-any.whl
.
File metadata
- Download URL: django_mdpages-0.2-py3-none-any.whl
- Upload date:
- Size: 4.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4448b370b8059d8e7d80a5752418e902b5b93052713f8037c395c53c1c79fcc0 |
|
MD5 | 39daee9a75dfcd6cf92ed127b0e8dcf6 |
|
BLAKE2b-256 | 048727a6839db31fc9b74c7f4d4e941c93321e2e9b51771ee904e5a39c4dff62 |