Sparrowの初期設定について解説していきます。
手順は大きく分けて2つあります。
- Djangoプロジェクトのセットアップ
- 管理画面での初期設定
この設定が完了するとブログを書き始められるようになります。
Djangoプロジェクトのセットアップ
この説明では、 mysiteという名前のプロジェクトを作る前提で解説を進めます。
フォルダを作成
まずはmysiteというフォルダを作り、そのフォルダに移動します。
$ mkdir mysite && cd mysite
Sparrowライブラリをインストール
Sparrowライブラリをインストールします。仮想環境は必要に応じて作成してください。
まずは、購入時にダウンロードしたzipフォルダを展開しSparrow-1.0.0-py3-none-any.whl
ファイルを適当な場所に移動させます。(1.0.0
はSparrowのバージョンを表し、ダウンロードしたタイミングにより最新のバージョンは異なります。)
ここでは、~/mysite/requirements/
というフォルダを作り、その中に移動したものとします。
pip install <whlファイルへのパス>
でインストールできます。パスとバージョンはご自身の環境に読み替えて下記コマンドを実行してください。
$ pip install requirements/Sparrow-1.0.0-py3-none-any.whl
なお、requirements.txtで指定する場合は以下のように書けます。
# ワーキングディレクトリからのパスを指定
file:path/to/Sparrow-1.0.0-py3-none-any.whl
pip install -r requirements/requirements.txt
でインストールできます。whlファイルへのパスはワーキングディレクトリ(コマンドを実行するディレクトリ)からのパスを指定する必要があります。
Wagtailのセットアップ
続いて、wagtail
コマンドを実行してDjangoプロジェクトを作ります。
以下のコマンドで、Djangoプロジェクトがセットアップされます。(最後のドットを忘れずにつけてください。)
このとき、~/mysite/requirements.txt
が存在するとエラーになるので存在する場合は削除してください。
$ wagtail start mysite .
ドットを忘れずに!
以下のようなフォルダ構成ができます。
mysite
├── .dockerignore
├── Dockerfile
├── home
├── manage.py
├── mysite
├── requirements.txt
└── search
不要なフォルダを削除
特別な理由がなければ、homeとsearchディレクトリを削除します。
.dockerignore、Dockerfile、requirements.txtも必要に応じて削除して大丈夫です。
設定ファイルの修正
設定ファイル base.py
を以下のように修正します。
INSTALLED_APPS = [
# 削除
# 'home',
# 'search',
# 追加
"sparrow.articles.apps.SparrowArticlesAppConfig",
"sparrow.common.apps.SparrowCommonAppConfig",
"sparrow.dashboard.apps.SparrowDashboardAppConfig",
"sparrow.sitesettings.apps.SparrowSiteSettingsAppConfig",
"sparrow.home.apps.SparrowHomeAppConfig",
"sparrow.search.apps.SparrowSearchAppConfig",
"fontawesomefree",
# 追加ここまで
"wagtail.contrib.forms",
...
"django.contrib.staticfiles",
# 追加
"wagtail.contrib.modeladmin",
"wagtail.contrib.routable_page",
"wagtail.contrib.settings",
"wagtail.contrib.styleguide",
"wagtail.contrib.table_block",
# 追加ここまで
]
TEMPLATES = [
{
"BACKEND": "django.template.backends.django.DjangoTemplates",
"DIRS": [
os.path.join(PROJECT_DIR, "templates"),
],
"APP_DIRS": True,
"OPTIONS": {
"context_processors": [
"django.template.context_processors.debug",
"django.template.context_processors.request",
"django.contrib.auth.context_processors.auth",
"django.contrib.messages.context_processors.messages",
# 追加
"wagtail.contrib.settings.context_processors.settings",
],
},
},
]
# 変更
LANGUAGE_CODE = "ja"
TIME_ZONE = "Asia/Tokyo"
# 表示される日付のフォーマットを変更したい場合
USE_L10N = False # 変更
DATE_FORMAT = "Y/n/j" # 追加
# 変更
WAGTAIL_SITE_NAME = "自分のサイト名"
# 追加
WAGTAILIMAGES_IMAGE_MODEL = "sparrowcommon.CommonImage"
WAGTAILEMBEDS_RESPONSIVE_HTML = True
urls.pyの修正
urls.pyに以下の変更を加えます。
from sparrow.common import views as sparrowcommon_views # 追加
# 変更1
from search import views as search_views # 変更前
from sparrow.search import views as sparrowsearch_views # 変更後
# 変更2
path("search/", search_views.search, name="search"), # 変更前
path("search/", sparrowsearch_views.search, name="search"), # 変更後
# 追加
handler404 = sparrowcommon_views.page_not_found
マイグレート
ここまでできたら、マイグレートとスーパーユーザーの作成を行います。
$ python manage.py migrate
$ python manage.py createsuperuser
サーバーの起動
最後にサーバーの起動ができればプロジェクトのセットアップは完了です。
$ python manage.py runserver
管理画面での初期設定
続いて、管理画面での設定を行います。
トップページを作成
http://127.0.0.1:8000/admin/ から管理画面にログインします。
ページの設定画面 http://127.0.0.1:8000/admin/pages/ に移動します。
子ページを追加 でトップページを作成します。
「ページタイトル」にTOPと記入して公開します。
サイトの設定
サイドバーの設定 > サイト一覧から設定画面 http://127.0.0.1:8000/admin/sites/ に移動します。
表示されたサイトをクリックし編集画面を開き、各項目に以下の値を入力します。
- ホスト名: 127.0.0.1
- ポート番号: 8000
- サイト名: ヘッダーなどで表示したいサイト名
- ルートページ: 先ほど作成したTOPページ
- デフォルトのサイト: はい
本番環境での設定項目
本番環境での設定項目は以下のようになります。
- ホスト名: example.com
- ポート番号: 443 (https化している場合)
記事一覧ページを作成
続いて、記事一覧ページ( /articles/
)を作成します。
サイドバーのページ > TOPを開き、ページを作成をクリックします。
記事一覧ページをクリックし設定項目を入力します。
- タイトル: 任意の値
- スラッグ(プロモートタブ): articles
スラッグは必ずarticlesを指定してください。
入力したら公開し、記事一覧ページ(http://127.0.0.1:8000/articles/)が表示できることを確認してください。
不要なページを削除
ここまで出来ていれば、ページの設定画面から 「Welcome to your new Wagtail site!」のページは削除して構いません。
設定が完了したら
サイトの設定が完了しました。これで記事の追加やサイトの編集が行えるようになります。次はサイトの基本設定をしてみましょう。
おつかれさまでした!