我正在尝试让 TinyMCE 在 Django 中工作。这是我所做的:
pip install django-tinymce4-lite
;软件包安装正常然后这里就变得棘手了:
Add tinymce.urls to urls.py for your project:
urlpatterns = [
...
url(r'^tinymce/', include('tinymce.urls')),
...
]
当我这样做时,我收到此错误:
url(r'^tinymce/', include('tinymce.urls')),
NameError: name 'url' is not defined
我尝试过以下方法:
这些都没有帮助。有什么建议么?
更新
根据建议,我将 url 更新为路径。现在我有一个新错误:
ModuleNotFoundError: No module named 'tinymce.urls'
这是我的 urls.py:
from django.urls import include, path
from django.contrib import admin
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
path('', include('core.urls')),
path('tinymce/', include('tinymce.urls')),
]
if settings.DEBUG:
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
这个错误让我怀疑我是否正确安装了插件。但我似乎有:
pip install django-tinymce4-lite
Requirement already satisfied: django-tinymce4-lite in /usr/local/lib/python3.6/site-packages
Requirement already satisfied: Django>=1.8.0 in /usr/local/lib/python3.6/site-packages (from django-tinymce4-lite)
Requirement already satisfied: jsmin in /usr/local/lib/python3.6/site-packages (from django-tinymce4-lite)
Requirement already satisfied: pytz in /usr/local/lib/python3.6/site-packages (from Django>=1.8.0->django-tinymce4-lite)
由于您使用的是 django 2.0,因此您应该使用
path
而不是 url
:
from django.urls import path
urlpatterns = [
...
path('tinymce/', include('tinymce.urls')),
...
]
您可以在此处找到更多详细信息。
是因为他使用的是 django 2 根据文档你可以使用 path 和 re_path 示例:
from django.urls import path , re_path
urlpatterns = [
path('tinymce/', include('tinymce.urls')),
# or
#path('tinymce/', include('tinymce.urls')),
]
Django==5.0.3 时错误继续; Python 3.11; django-tinymce4-lite==1.8.0。错误消息向我们显示原因位于 /root/env/lib/python3.11/site-packages/tinymce/urls.py 的第 1 行。
我按照建议更改了tinymce/urls 这个Stackoverflow提供了解决方案。例如,一个快速解决方案是:
### changed april 2024 to handle
### ImportError: cannot import name 'url' from 'django.conf.urls'
#from django.conf.urls import url
from django.urls import re_path as url
这不是一个好的长期解决方案。我打算提交tinymcs看看是否需要更新或者看看他们是否有更好的解决方案。