THUMBS SHIFT→

このブログは主に親指シフトを用いて書かれています

mezzanineのチュートリアル"A Mezzanine Tutorial, Take 2"の覚書

最近python製のCMS(wordpressみたいなもの)である"mezzanine"を勉強してた。日本語での情報が少ないので

Docs / Mezzanine / A Mezzanine Tutorial, Take 2 | Rod's Tech

このサイトを参考にしてたんだけど、解説不足や(おそらく)アップデートで現状に即して無いところがみつかったので気づいたところをかいてく。一通り読んだけど自分自身まだ全然mezzanineについてわかってないので参考程度に読んでください。

元サイトがやってることの流れ(多分)

俺はあまり英語読みたくないので必要なところだけ読もうとしたけど、前のpartで言ったこと使ったりするので同じことすると躓くとおもいます。 

part1

mezzanineのインストール。ブログの投稿ページをMarkdown記法で書けるようにする。

part2

ブログ記事内でコードハイライトを適用する。要らないと思ってここを飛ばすと後でわかんなくなる。(実体験)

part3

デフォルトのページをカスタムする。

part4

新しいページを作る。adminにmodelを追加する。ココらへんから俺の手に負えなくなってきたので覚書がなくなる。

part1

Pagedown, a Mezzanine Markdown Package

#####################
# PAGEDOWN SETTINGS #
#####################
RICHTEXT_WIDGET_CLASS = 'mezzanine_pagedown.widgets.PageDownWidget'
RICHTEXT_FILTER = 'mezzanine_pagedown.filters.custom'
RICHTEXT_FILTERS = (RICHTEXT_FILTER,)
PAGEDOWN_MARKDOWN_EXTENSIONS = ('extra','codehilite','toc')
RICHTEXT_FILTER_LEVEL = 3
PAGEDOWN_SERVER_SIDE_PREVIEW = True

をsettings.pyに追加する際、「RICHTEXT_FILTERSを変な書き方してるのはバグで、たぶん今は治ってると思うよ」と筆者は書いてるけど自分が試したところでは多分治ってないのでそのままコピペしてください。

urlpatterns = patterns("",
("^pagedown/", include(mezzanine_pagedown.urls)),

を置き換えろとあるが、このコードはアプデのせいかもう存在してないので20行目あたりにある

urlpatterns = i18n_patterns(
    # Change the admin prefix here to use an alternate URL for the
    # admin interface, which would be marginally more secure.
    url("^admin/", include(admin.site.urls)),
)

urlpatterns = i18n_patterns(
    # Change the admin prefix here to use an alternate URL for th
    # admin interface, which would be marginally more secure.
    url("^admin/", include(admin.site.urls)),
    url("^pagedown/", include(mezzanine_pagedown.urls)),
)

に置き換える。

part2

Generate Pygments css

python manage.py pygments_styles はエラー出るので python manage.py pygments_styles -h を使う。

python manage.py pygments_styles colorfulもエラーなので python manage.py pygments_styles --scheme colorfulを使う。このコマンドはCSSコードを生成するけど、それをどこに置くかが下の段落に書いてある。

part3

SEARCH_MODEL_CHOICES = []

はsettings.pyのどこかに書く。

Remove Left and Bottom Menus

{% page_menu "pages/menus/tree.html" %} はbase.html の106行目

{% page_menu "pages/menus/footer.html" %}はbase.htmlの135行目

<div class="span2 left">
to

<div class="span1 left">
and

<div class="span7 middle">
to

<div class="span8 middle">

とあるが検索かけてもこの部分がみつからなかったのでアプデで消えたと思われる。あとそもそもbody.htmlが消えてbase.htmlに統合されているので注意。おそらく上のdivタグは <div class="col-md-3 right"> にまとめられてて、実際ここのdivタグを全部取り除くと下の枠が消えるんだけど、これが良い方法なのかはわからん。

Make Home Page CMS Editable

"mezzanine.pages.views.page"

を""で囲むのを忘れないように。警告がでるので気になる人は一番上でimport mazzanineとでもすればいい。

While we're mucking with pages in the admin, clean out pages you don't want.

これはadmin>Pagesからできる。

以降は気が向いたら書く。何年後になるかは知らない。

part4