私はdjango-cmsを学んでいます。私は非常に成功したカスタムプラグインを作成しようとしましたが、カスタムメイドのプラグインを apphook にフックしようとすると、次のようなエラーが表示されました。
urls という名前のモジュールがありません。
django cms サイトのドキュメントに記載されているチュートリアルに従い、cms_app.py ファイルを作成しました。現在、私のアプリケーション ディレクトリには、django cms のカスタム プラグインを作成するために必要なすべてのファイルと、cms_app.py の追加ファイルがあります。
URL の設定に問題がありますか、それともアプリ ディレクトリ内に新しい urls.py ファイルを作成する必要がありますか?
私の cms_app.py は、チュートリアルで指定されているものとまったく同じです。
編集 - 1
コマンドを使用して myproject というプロジェクトを作成しました -
python django-admin.py startproject myproject
cms のチュートリアルを参照した後、基本的なコマンドを使用して、first というプラグインを作成しました。
最初に python manage.py startapp
現在、プラグインは完全に機能しており、apphook を試行する前のディレクトリ構造は、
first/
__init__.py
cms_plugins.py
models.py
tests.py
views.py
apphook でアプリをフックしようとすると、ディレクトリ構造は次のようになります。
first/
__init__.py
cms_app.py
cms_plugins.py
models.py
tests.py
views.py
私の cms_app.py は次のとおりです。
from cms.app_base import CMSApp
from cms.apphook_pool import apphook_pool
from django.utils.translation import ugettext_lazy as _
class FirstApp(CMSApp):
name = _("First App") # give your app a name, this is required
urls = ["first.urls"] # link your app to url configuration(s)
apphook_pool.register(FirstApp) # register your app
myproject フォルダーに urls.py ファイルがあり、次のとおりです。
from django.conf.urls.defaults import *
from django.contrib import admin
from django.conf import settings
# Uncomment the next two lines to enable the admin:
# from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
# Examples:
# url(r'^$', 'myproject.views.home', name='home'),
# url(r'^myproject/', include('myproject.foo.urls')),
# Uncomment the admin/doc line below to enable admin documentation:
# url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
# Uncomment the next line to enable the admin:
url(r'^admin/', include(admin.site.urls)),
url(r'^', include('cms.urls')),
)
if settings.DEBUG:
urlpatterns = patterns('',
(r'^' + settings.MEDIA_URL.lstrip('/'), include('appmedia.urls')),
) + urlpatterns
チュートリアルで述べたようにサーバーを再起動しましたが、成功しませんでした。私の単純なアプリの何が問題なのかについてのアイデアはありますか?!