blogs on zfl
Project description
zfl-blogs
目次
詳細
zfl-blogs
インストール
$ pip install --upgrade pip
$ pip --version
pip 21.3.1
$ pip install zfl-blogs
設定
settings.py
の編集
INSTALLED_APPS = [
...
'django.forms',
'django_cleanup', # ファイルを自動的に削除するサードパーティ
'markdownx', # Django用に構築されたMarkdownエディタ
'blogs', # zfl-blogsアプリ
]
# マークダウンプレビューで必要な定義
FORM_RENDERER = 'django.forms.renderers.TemplatesSetting'
...
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')], # プロジェクト直下でのtemplatesディレクトリを有効にする
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
...
'blogs.context.common', # context.pyのcommon関数をテンプレートで使えるようにする
],
# カスタムテンプレートタグ
'libraries': {
'mark': 'blogs.templatetags.mark',
}
},
},
]
...
STATIC_URL = '/static/'
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, "media")
MARKDOWNX_IMAGE_MAX_SIZE = {'size': (800, 500), 'quality': 100}
MARKDOWNX_UPLOAD_MAX_SIZE = 1000 * 1024 # 最大1MBまで可能
MARKDOWNX_UPLOAD_CONTENT_TYPES = ['image/jpeg', 'image/png', 'image/gif']
MARKDOWNX_MARKDOWN_EXTENSIONS = [
'extra', # Markdownの拡張機能
'admonition', # 訓戒・忠告
'sane_lists', # 正常なリスト
'toc', # 目次
'nl2br', # 改行
]
MARKDOWNX_MARKDOWN_EXTENSION_CONFIGS = {
'toc': {
'title': '目次',
'permalink': True
}
}
urls.py
の編集
from django.contrib import admin
from django.urls import path, include
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
path('admin/', admin.site.urls),
path('markdownx/', include("markdownx.urls")),
path('blogs/', include("blogs.urls")),
]
# 開発環境での設定
if settings.DEBUG == True:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
settings.py
のFORM_RENDERER
でdjango.forms.renderers.TemplatesSetting
に設定しているので、プロジェクト直下にtemplates
ディレクトリを作成し、blogs
アプリのtemplates
ディレクトリからmarkdownx
ディレクトリをコピーしてきます。
そうすることで、記事を書く際のマークダウンプレビューを横並びにすることができます。
プロジェクト直下に「templates」ディレクトリを作成します。
$ mkdir templates
zfl-blogsパッケージ内にある「markdownx/widget.html」をプロジェクト直下の「templates」ディレクトリにコピーします。
以下のようにして相対パスを確認します。
$ python3 -c "import blogs; print(blogs.__path__[0])"
.../lib/python3.6/site-packages/blogs
相対パスをコピーしてzfl-blogsパッケージ内の「templates」ディレクトリを確認します。
$ ls .../lib/python3.6/site-packages/blogs/templates
blogs markdownx
zfl-blogsパッケージにある「templates/markdownx」ディレクトリを自身のプロジェクト直下に作成した「templates」ディレクトリ内にコピーします。
$ cp -r .../lib/python3.6/site-packages/blogs/templates/markdownx templates/.
実行
データベースの作成
$ python3 manage.py migrate
スーパーユーザーの作成
$ python3 manage.py createsuperuser
起動
$ python3 manage.py runserver
その他
markdownxで保存された画像は自動的に削除されないので、file_cleanupコマンドを実行して手動削除する必要があります。
$ python3 manage.py file_cleanup
License
zfl-blogs
is distributed under the terms of the MIT license.
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 zfl_blogs-2.1.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4caa9ac0cc7bd77b56bf57bf3896ab2dc3d7c1e12a664ac9f25056cbc9686bf5 |
|
MD5 | 06055d7e4b34600bcd190634edae7696 |
|
BLAKE2b-256 | fba89a96124671cd948ab643a7edcb6bd01c3198e78fb972cde3b053683d5cb7 |