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
linuxコマンドの「xargs」を使って一行でコピーしてしまいます。
$ python3 -c "import blogs; print(blogs.__path__[0]+'/templates/markdownx')" | xargs -I % -t cp -r % templates/.
cp -r /../lib/python3.6/site-packages/blogs/templates/markdownx templates.
プロジェクト直下のディレクトリを確認
$ls templates
markdownx
実行
データベースの作成
$ 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
zfl_blogs-2.1.4.tar.gz
(2.2 MB
view hashes)
Built Distribution
Close
Hashes for zfl_blogs-2.1.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7dea731deb4f54bd65b9e8f2cf82677e298d1793f7ccce29f00c9703eb72d66d |
|
MD5 | 4e4c9004d10badb82b14a101097c0f60 |
|
BLAKE2b-256 | 3b5d55827b5bf591edb7f04344730b1417d968ad427201dd0bad7fb2d28e8438 |