Jinja2 und Flask Autor, mitsuhiko Ein statischer Site-Generator namens Lektor wurde vor einiger Zeit veröffentlicht veröffentlicht Ich habe es getan, also habe ich etwas recherchiert.
Die Chatch-Verkäufe auf der oberen Seite
A flexible and powerful static content management system for building complex and beautiful websites out of flat files — for people who do not want to make a compromise between a CMS and a static blog engine.
Getting your ideas implemented is as easy as making breakfast eggs.
Ein flexibles und leistungsstarkes statisches Content-Management-System zum Erstellen komplexer und schöner Websites aus Flatfiles für diejenigen, die keine Kompromisse zwischen CMS oder Blog-Engine eingehen möchten
Es ist so einfach wie ein Eierspeise zum Frühstück zuzubereiten
[Moongift](http://www.moongift.jp/2015/09/lektor-python%E8%A3%BD%E3%81%AE%E9%9D%99%E7%9A%84%E3%82 % B5% E3% 82% A4% E3% 83% 88% E3% 82% B8% E3% 82% A7% E3% 83% 8D% E3% 83% AC% E3% 83% BC% E3% 82% BF /) Aber es scheint, dass es schon früher eingeführt wurde, aber es sieht besser aus, da die Entwicklung sehr weit fortgeschritten ist.
Leider scheint es Python3 noch nicht zu unterstützen (es scheint, dass es in ~~ 2.0 unterstützt wird. Es scheint, dass es nicht rechtzeitig für ~~ 2.0 war, es scheint 3.0 zu sein. (2016-04-16)) Benötigt Python2.
Installieren selbst ist sehr einfach. Führen Sie ein Shell-Skript aus oder installieren Sie es mit pip.
Überprüfen Sie nach Abschluss der Installation die Hilfe mit dem Befehl.
#lektor --help
Usage: lektor [OPTIONS] COMMAND [ARGS]...
The lektor management application.
This command can invoke lektor locally and serve up the website. It's
intended for local development of websites.
Options:
--project PATH The path to the lektor project to work with.
--language TEXT The UI language to use (overrides autodetection).
--version Show the version and exit.
--help Show this message and exit.
Commands:
build Builds the entire project into the final...
clean Cleans the entire build folder.
content-file-info Provides information for a set of lektor files.
deploy Deploy the website.
dev Development commands.
plugins Manages plugins.
project-info Shows the info about a project.
quickstart Starts a new empty project.
server Launch a local server.
Es scheint, dass Sie ein Projekt einfach starten können, indem Sie optional einen Schnellstart hinzufügen.
# lektor quickstart
Lektor Quickstart
=================
This wizard will generate a new basic project with some sensible defaults for
getting started quickly. We just need to go through a few questions so that
the project is set up correctly for you.
Step 1:
| A project needs a name. The name is primarily used for the admin UI and
| some other places to refer to your project to not get confused if multiple
| projects exist. You can change this at any later point.
> Project Name: "Geben Sie den Namen des Projekts ein"
Step 2:
| Your name. This is used in a few places in the default template to refer
| to in the default copyright messages.
> Author Name ["Name des Autors"]:
Step 3:
| This is the path where the project will be located. You can move a
| project around later if you do not like the path. If you provide a
| relative path it will be relative to the working directory.
> Project Path ["Projektpfad"]:
Step 4:
| Do you want to generate a basic blog module? If you enable this the
| models for a very basic blog will be generated.
> Add Basic Blog [Y/n]: Y
That's all. Create project? [Y/n] Y
Das Projekt wurde sofort erstellt, und als ich in den erstellten Ordner kopierte und den Befehl tree ausführte, konnte ich die erstellte Datei bestätigen.
tree
.
├── Projektname.lektorproject
├── assets
│ └── static
│ └── style.css
├── content
│ ├── about
│ │ └── contents.lr
│ ├── blog
│ │ ├── contents.lr
│ │ └── first-post
│ │ └── contents.lr
│ ├── contents.lr
│ └── projects
│ └── contents.lr
├── models
│ ├── blog-post.ini
│ ├── blog.ini
│ └── page.ini
└── templates
├── blog-post.html
├── blog.html
├── layout.html
├── macros
│ ├── blog.html
│ └── pagination.html
└── page.html
10 directories, 16 files
Führen Sie den folgenden Befehl aus, um den lokalen Server zu starten: Um darauf zuzugreifen, greifen Sie mit Ihrem Browser auf http://127.0.0.1:5000/ zu.
# lektor server
* Project path:Projektname.lektorproject
* Output path: /Users/*****/Library/Caches/Lektor/builds/7f3059dbd1dd5855e861340204aabf2a
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
Started source info update
Finished source info update in 0.03 sec
Started build
U index.html
U about/index.html
U projects/index.html
U blog/index.html
U static/style.css
U blog/first-post/index.html
Finished build in 0.10 sec
Started prune
Finished prune in 0.00 sec
Um die Einstellungen zu ändern, rufen Sie die Administrationsseite unter http://127.0.0.1:5000/admin/ auf.
Der Rest scheint editierbar zu sein.
Wenn Sie setup.py überprüfen, können Sie sehen, dass es auf verschiedenen Projekten basiert, die von mitsuhiko erstellt wurden, nicht wahr?
Jinja2>=2.4 Jinja2 is a full featured template engine for Python. It has full unicode support, an optional integrated sandboxed execution environment, widely used and BSD licensed.
Autor trmin Ronacher
click>=6.0 Click is a Python package for creating beautiful command line interfaces in a composable way with as little code as necessary. It’s the “Command Line Interface Creation Kit”. It’s highly configurable but comes with sensible defaults out of the box.
It aims to make the process of writing command line tools quick and fun while also preventing any frustration caused by the inability to implement an intended CLI API.
Autor trmin Ronacher
watchdog Python API library and shell utilities to monitor file system events.
mistune The fastest markdown parser in pure Python, inspired by marked.
Flask Flask is a microframework for Python based on Werkzeug, Jinja 2 and good intentions. And before you ask: It's BSD licensed!
Autor trmin Ronacher
EXIFRead Easy to use Python module to extract Exif metadata from tiff and jpeg files.
inifile A small INI library for Python.
Autor trmin Ronacher
Babel Babel is an integrated collection of utilities that assist in internationalizing and localizing Python applications, with an emphasis on web-based applications.
setuptools Easily download, build, install, upgrade, and uninstall Python packages
pip The PyPA recommended tool for installing Python packages.
requests Requests is the only Non-GMO HTTP library for Python, safe for human consumption.