2

こんにちは、Django 管理ページに tinymce を統合しようとしています。django-tinymce モジュール (http://code.google.com/p/django-tinymce/) をインストールしました。指示に従ったので、これらは私のファイルです。

設定.py

INSTALLED_APPS = (
    ...
    'tinymce',
)


TINYMCE_DEFAULT_CONFIG = {
    'plugins': "table,paste,searchreplace",
    'theme': "advanced",
}
TINYMCE_SPELLCHECKER = False
TINYMCE_COMPRESSOR = False

url.py

urlpatterns = patterns('',
    # Example:
    # (r'^uboPy/', include('uboPy.foo.urls')),

    # Uncomment the admin/doc line below to enable admin documentation:
    # (r'^admin/doc/', include('django.contrib.admindocs.urls')),

    # Uncomment the next line to enable the admin:
        (r'^admin/', include(admin.site.urls)),
        (r'^tinymce/', include('tinymce.urls')),
)

私はルート内のフォルダーにtinymceのjsを持っていますmedia/js 。モデルでは、次の行があります。 text = tinymce_models.HTMLField()

サーバーを実行するとエラーは発生しませんが、モデルの管理領域に移動すると、tinymce がロードされません。firebug を使用すると、tinymce ライブラリで 404 エラーが発生しますが、パスは正しいことがわかります。url.py に問題がありますか?

助けてくれてありがとう

4

2 に答える 2

1

django-tinymce のドキュメントが古い、つまり部分的に間違っていることがわかりました。

私が発見したのは、tinymce と django-tinymce パッケージの異なるバージョンには互換性がないということです。

project/settings.py にいくつかの変数を追加し、tinymce ディレクトリとファイル名を変更して解決しました。

django-tinymce urls.py には、実際には「tinymce」という名前のディレクトリが「tiny_mce」と名付けられていると想定するハードコードされたパスがいくつかありました。名前を変更するか、django-tinymce urls.py を変更する必要がありました。

# project setting.py
STATIC_ROOT = os.path.join(BASE_DIR, "static")
STATIC_JS_DIR = os.path.join(STATIC_DIR, "js")
TINYMCE_JS_ROOT = os.path.join(STATIC_JS_DIR, "tiny_mce")
TINYMCE_JS_URL = os.path.join(TINYMCE_JS_ROOT, "tiny_mce.js")
#TINYMCE_JS_ROOT = os.path.join(STATIC_JS_DIR, "tiny_mce")
#TINYMCE_JS_URL = os.path.join(TINYMCE_JS_ROOT, "tiny_mce.js")
于 2014-02-26T20:52:00.440 に答える
1

プロジェクトルートにフォルダを置いているだけmedia/jsですか? 実際には、どこかの URL から何らかの方法で提供する必要があります。

JavaScript ファイルはブラウザ経由で読み込まれるため、他のすべてのメディアが存在するインターネットからアクセスできる必要があります。この部分は django とは関係がないため、エラーや URL の問題は発生しないはずです。

その部分を解決したら、TINYMCE_JS_URL設定パラメーターを介してファイルにアクセスできる URL を指定します。

たとえば、私のセットアップでは、js は..

TINYMCE_JS_URL = '/media/js/tiny_mce/tiny_mce.js'

firebug を使用すると、tinymce ライブラリで 404 エラーが発生しますが、パスは正しいことがわかります。

この URL パスにアクセスすると JS ファイルが読み込まれるということですか? 私が言いたいのは、パスが 404 の場合、パスはどのように正しいのでしょうか?

于 2011-02-20T19:21:27.883 に答える