本文へ移動

Python、Webアプリや製品・サービス開発についてhirokikyが書きます。

django-cms 導入中にurlsがインポートできない件の解決

hirokikyはてなブックマーク

django-cms のドキュメント (https://www.django-cms.org/en/documentation/) を参考に django-cms 導入デモ中のこと。
開発用サーバー起動後にブラウザから開くと

ImportError at /
No module named urls

がでる。

環境

  • UbuntuServer==11.04
  • Python==2.7.1
  • Django==1.4
  • PIL==1.1.7
  • South==0.7.5
  • django-classy-tags==0.3.4.1
  • django-cms==2.3
  • django-mptt==0.5.2
  • django-sekizai==0.6.1
  • html5lib==0.95

原因

Django1.4 で上記のデモを行うとなる。
このデモ、よく見たら Django のバージョンが 1.3.1。
1.4 だと startproject 時のディレクトリ構造が違うから、エラーがでる。
設定ファイル (settings.py) もデモの 1.3 のをコピーしてるから、違うのは当たり前のこと。

解法

#settings.py

#before
ROOT_URLCONF = 'urls'
#after
ROOT_URLCONF = 'appname.urls'

こういうことだった。

Django1.4 に django-cms を導入したいなら下記ドキュメントを参考にしたほうが幸せになれるかんじ。