JSON Parser and Collection for Render Engine
Project description
Render Engine JSON
JSON Parser and Collection Module for Render Engine
Installation
pip install render_engine_json
Usage
The render-engine-json
extends render-engine to allow you to build pages and collections using JSON.
The JSONPageParser
class can be used to parse a single JSON page and the JSONCollection
class can be used to parse a single collection of JSON pages.
NOTE The
JSONCollection
class is designed to work with a single JSON file that contains an array of JSON Objects or a JSON Hash where the keys are the slugs. If you want to work with multiple JSON files you can use a regularCollection
and theJSONPageParser
as the parser.
Single JSON Page Entry
To create a json entry you will need the JSONPageParser
class as the Parser for your Page
Object.
You can pass the page a json string or a json file path.
As a string
from render_engine import Page, Site
from render_engine_json import JSONPageParser
site = Site()
json_page = """
{
"title": "My JSON Page",
"content": "This is my json page"
}
"""
@site.page
class JSONStringPage(Page):
parser = JSONPageParser
content = json_page
As a file
@site.page
class JSONFilePage(Page):
parser = JSONPageParser
content_path = "path/to/json/file.json"
JSON Collection
To create a JSON collection you will need the JSONCollection
Object.
You can pass the collection a json string or a json file path.
As a string
from render_engine import Site, Collection
from render_engine_json import JSONCollection, JSONPageParser
site = Site()
json_collection = """
[
{
"title": "My JSON Page",
"content": "This is my json page"
},
{
"title": "My JSON Page 2",
"content": "This is my json page 2"
}
]
"""
@site.collection
class JSONStringCollection(Collection):
parser = JSONPageParser
content = json_collection
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
Hashes for render_engine_json-2023.12.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 53f723b99d80c83b4bb58b98eb392acff3a9f22808630968c3ef5abb3071500a |
|
MD5 | 229eac4f92982b9a7c1cc6286a300f59 |
|
BLAKE2b-256 | 487da10fa5f9368f213f0524c6b7d759087f0f3b161b2907d7552dd74189543b |
Hashes for render_engine_json-2023.12.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5f8353e5b98c935330deebcf5e7eb9ab2f9430d12b35ba0811590ac8c31e1182 |
|
MD5 | e3c5f6bcdb941ec56df79450e568b7b9 |
|
BLAKE2b-256 | 60b52c7a946f169e210fed8e2ba0a843267f58622d63a6cf9889d1811914c3c9 |