django ImportError: No module named tiny-mce
django ImportError: No module named tiny-mce
我是 运行ning django 1.7.2 和 python 2.7.
我有一个测试表单,我想将 django-tinymce 添加到我的文本区域。
我已经按照教程 here 安装了 django-tinymce。
但是,当我尝试 运行 服务器时,我的本地开发服务器出现以下错误:
ImportError: No module named tiny-mce
以下是我安装 django-tinymce 的步骤:
将应用程序安装到我项目的虚拟环境中。
pip install django-tinymce
我通过运行ning pip freeze (django-tinymce==2.2.0)确认了上面的安装。
然后我将 'tinymce',
添加到我的 INSTALLED_APPS
然后我将 (r'^tinymce/', include('tinymce.urls')),
添加到我的网址。
然后我将 tinymce js 文件添加到我的插件中,并在我的 base.html 文件中引用了该文件:
<script src="{{ STATIC_URL }}plugins/tinymce/tinymce.min.js"></script>
我已将以下代码添加到我的 settings.py 文件中:
TINYMCE_JS_URL = os.path.join(STATIC_URL, 'plugins/tinymce/tinymce.min.js')
TINYMCE_DEFAULT_CONFIG = {
'plugins' :'table, spellchecker, paste, searchreplace',
'theme' : "advanced",
'cleanup_on_startup ':True ,
'custom_undo_redo_levels':10 ,
}
TINYMCE_SPELLCHECKER = True
TINYMCE_COMPRESSOR = True
我仔细检查了我是否已将 django-tinymce 正确安装到正确的虚拟环境中。
我搜索了 Google 和 SO,但是当我尝试 运行 我的本地开发服务器时,我不知道如何解决我遇到的错误:
导入错误:没有名为 tiny-mce 的模块
编辑
表单代码如下:
from tinymce.widgets import TinyMCE
....
class SummaryDetailsForm(forms.ModelForm):
required_css_class = 'required'
def __init__(self, available_languages, language_preference, *args, **kwargs):
"""
available_languages should be a valid choices list
"""
super(SummaryDetailsForm, self).__init__(*args, **kwargs)
self.fields['language_code'] = forms.ChoiceField(choices=available_languages, initial=language_preference, label=_('Language'),)
summary_details = forms.CharField(widget=TinyMCE(attrs={'cols': 80, 'rows': 30}))
class Meta:
model = SummaryDetails
这里是完整的回溯:
Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "C:\Users33114\desktop\zoodal\env\lib\site-packages\django\core\manage
ment\__init__.py", line 385, in execute_from_command_line
utility.execute()
File "C:\Users33114\desktop\zoodal\env\lib\site-packages\django\core\manage
ment\__init__.py", line 354, in execute
django.setup()
File "C:\Users33114\desktop\zoodal\env\lib\site-packages\django\__init__.py
", line 21, in setup
apps.populate(settings.INSTALLED_APPS)
File "C:\Users33114\desktop\zoodal\env\lib\site-packages\django\apps\regist
ry.py", line 85, in populate
app_config = AppConfig.create(entry)
File "C:\Users33114\desktop\zoodal\env\lib\site-packages\django\apps\config
.py", line 87, in create
module = import_module(entry)
File "c:\python27\Lib\importlib\__init__.py", line 37, in import_module
__import__(name)
ImportError: No module named tiny-mce
您似乎将 'tiny-mce'
而不是 'tinymce'
添加到您的 INSTALLED_APPS
。
我是 运行ning django 1.7.2 和 python 2.7.
我有一个测试表单,我想将 django-tinymce 添加到我的文本区域。
我已经按照教程 here 安装了 django-tinymce。
但是,当我尝试 运行 服务器时,我的本地开发服务器出现以下错误:
ImportError: No module named tiny-mce
以下是我安装 django-tinymce 的步骤:
将应用程序安装到我项目的虚拟环境中。
pip install django-tinymce
我通过运行ning pip freeze (django-tinymce==2.2.0)确认了上面的安装。
然后我将
'tinymce',
添加到我的INSTALLED_APPS
然后我将
(r'^tinymce/', include('tinymce.urls')),
添加到我的网址。然后我将 tinymce js 文件添加到我的插件中,并在我的 base.html 文件中引用了该文件:
<script src="{{ STATIC_URL }}plugins/tinymce/tinymce.min.js"></script>
我已将以下代码添加到我的 settings.py 文件中:
TINYMCE_JS_URL = os.path.join(STATIC_URL, 'plugins/tinymce/tinymce.min.js')
TINYMCE_DEFAULT_CONFIG = {
'plugins' :'table, spellchecker, paste, searchreplace',
'theme' : "advanced",
'cleanup_on_startup ':True ,
'custom_undo_redo_levels':10 ,
}
TINYMCE_SPELLCHECKER = True
TINYMCE_COMPRESSOR = True
我仔细检查了我是否已将 django-tinymce 正确安装到正确的虚拟环境中。
我搜索了 Google 和 SO,但是当我尝试 运行 我的本地开发服务器时,我不知道如何解决我遇到的错误:
导入错误:没有名为 tiny-mce 的模块
编辑
表单代码如下:
from tinymce.widgets import TinyMCE
....
class SummaryDetailsForm(forms.ModelForm):
required_css_class = 'required'
def __init__(self, available_languages, language_preference, *args, **kwargs):
"""
available_languages should be a valid choices list
"""
super(SummaryDetailsForm, self).__init__(*args, **kwargs)
self.fields['language_code'] = forms.ChoiceField(choices=available_languages, initial=language_preference, label=_('Language'),)
summary_details = forms.CharField(widget=TinyMCE(attrs={'cols': 80, 'rows': 30}))
class Meta:
model = SummaryDetails
这里是完整的回溯:
Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "C:\Users33114\desktop\zoodal\env\lib\site-packages\django\core\manage
ment\__init__.py", line 385, in execute_from_command_line
utility.execute()
File "C:\Users33114\desktop\zoodal\env\lib\site-packages\django\core\manage
ment\__init__.py", line 354, in execute
django.setup()
File "C:\Users33114\desktop\zoodal\env\lib\site-packages\django\__init__.py
", line 21, in setup
apps.populate(settings.INSTALLED_APPS)
File "C:\Users33114\desktop\zoodal\env\lib\site-packages\django\apps\regist
ry.py", line 85, in populate
app_config = AppConfig.create(entry)
File "C:\Users33114\desktop\zoodal\env\lib\site-packages\django\apps\config
.py", line 87, in create
module = import_module(entry)
File "c:\python27\Lib\importlib\__init__.py", line 37, in import_module
__import__(name)
ImportError: No module named tiny-mce
您似乎将 'tiny-mce'
而不是 'tinymce'
添加到您的 INSTALLED_APPS
。