Django django-adminfiles
Django django-adminfiles
我正在使用 Django 创建博客,我需要在 post 上插入图像。据我所知,最好的包装是 django-adminfiles
安装指南很简单,但我不明白第3步(因为我的英语水平不好:S):
Make the contents of the adminfiles/static/adminfiles directory available at STATIC_URL/adminfiles. This can be done by through your webserver configuration, via an app such as django.contrib.staticfiles, or by copying the files or making a symlink.
我有 运行 collecstatic,将 adminfiles/static/adminfiles 的文件复制到我的静态目录,但似乎没有任何效果。当我写 post 时,它应该像 video 中那样显示,但图像缩略图和 "All uploads images"、"Upload"、"Refresh"... 不会出现。
我是 Django 的新手,这个愚蠢的问题让我有点不知所措。 ¿有人知道我必须在这里做什么吗?
我的环境
- OS: CentOS7_x86_64
- Python: 2.7.5 (必须是开发版)
- Django: 1.8.1
步骤
安装
'adminfiles' :
pip install django-adminfiles==1.0.1
'sorl-thumbnail' :
pip install sorl-thumbnail==12.2
'pillow' 的先决条件:
yum install libtiff-devel libjpeg-devel libzip-devel freetype-devel lcms2-devel libwebp-devel tcl-devel tk-devel -y
'pillow' :
pip install pillow==2.8.1
使用管理文件
我创建了一个名为 'demo' 的 django 项目,它只有一个应用程序 'trial'。
demo
|
|------ demo
| |---- __init__.py
| |---- settings.py
| |---- urls.py
| |---- wsgi.py
|
|------ manage.py
|------ trial
|---- \aa___init__.py
|---- admin.py
|---- models.py
|---- tests.py
|---- views.py
要在 'demo' 项目中使用 adminfiles,我们必须执行以下操作:
将 'adminfiles'、'sorl.thumbnail' 添加到 demo/settings.py 文件的 INSTALLED_APPS 元组。
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'adminfiles',
'sorl.thumbnail',
'trial',
)
将 adminfiles url 添加到 demo/urls.py 文件的 urlatterns 列表中。
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
url(r'^adminfiles/', include('adminfiles.urls')),
]
修改trial/admin.py文件的admin。
(注:Article是在trial/models.py中定义的模型,它有一个名为'text'的TextField字段)
from django.contrib import admin
from models import Article
from adminfiles.admin import FilePickerAdmin
admin.site.register(Article)
class ExtraAdmin(FilePickerAdmin):
adminfiles_fields = ('text',)
admin.site.register(Article, ExtraAdmin)
python manage.py 迁移
设置MEDIA_URL和MEDIA_ROOT.
demo/settings.py :
MEDIA_URL = '/media/'
MEDIA_ROOT = '/data/media/'
demo/urls.py :
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
url(r'^adminfiles/', include('adminfiles.urls')),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
经过以上设置后,上传的文件会存放在'/data/media/adminfiles/'目录下
我正在使用 Django 创建博客,我需要在 post 上插入图像。据我所知,最好的包装是 django-adminfiles
安装指南很简单,但我不明白第3步(因为我的英语水平不好:S):
Make the contents of the adminfiles/static/adminfiles directory available at STATIC_URL/adminfiles. This can be done by through your webserver configuration, via an app such as django.contrib.staticfiles, or by copying the files or making a symlink.
我有 运行 collecstatic,将 adminfiles/static/adminfiles 的文件复制到我的静态目录,但似乎没有任何效果。当我写 post 时,它应该像 video 中那样显示,但图像缩略图和 "All uploads images"、"Upload"、"Refresh"... 不会出现。 我是 Django 的新手,这个愚蠢的问题让我有点不知所措。 ¿有人知道我必须在这里做什么吗?
我的环境
- OS: CentOS7_x86_64
- Python: 2.7.5 (必须是开发版)
- Django: 1.8.1
步骤
安装
'adminfiles' :
pip install django-adminfiles==1.0.1
'sorl-thumbnail' :
pip install sorl-thumbnail==12.2
'pillow' 的先决条件:
yum install libtiff-devel libjpeg-devel libzip-devel freetype-devel lcms2-devel libwebp-devel tcl-devel tk-devel -y
'pillow' :
pip install pillow==2.8.1
使用管理文件
我创建了一个名为 'demo' 的 django 项目,它只有一个应用程序 'trial'。
demo | |------ demo | |---- __init__.py | |---- settings.py | |---- urls.py | |---- wsgi.py | |------ manage.py |------ trial |---- \aa___init__.py |---- admin.py |---- models.py |---- tests.py |---- views.py
要在 'demo' 项目中使用 adminfiles,我们必须执行以下操作:将 'adminfiles'、'sorl.thumbnail' 添加到 demo/settings.py 文件的 INSTALLED_APPS 元组。
INSTALLED_APPS = ( 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'adminfiles', 'sorl.thumbnail', 'trial', )
将 adminfiles url 添加到 demo/urls.py 文件的 urlatterns 列表中。
urlpatterns = [ url(r'^admin/', include(admin.site.urls)), url(r'^adminfiles/', include('adminfiles.urls')), ]
修改trial/admin.py文件的admin。
(注:Article是在trial/models.py中定义的模型,它有一个名为'text'的TextField字段)from django.contrib import admin from models import Article from adminfiles.admin import FilePickerAdmin
admin.site.register(Article)class ExtraAdmin(FilePickerAdmin): adminfiles_fields = ('text',) admin.site.register(Article, ExtraAdmin)python manage.py 迁移
设置MEDIA_URL和MEDIA_ROOT.
demo/settings.py :
MEDIA_URL = '/media/' MEDIA_ROOT = '/data/media/'
demo/urls.py :
from django.conf import settings from django.conf.urls.static import static urlpatterns = [ url(r'^admin/', include(admin.site.urls)), url(r'^adminfiles/', include('adminfiles.urls')), ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
经过以上设置后,上传的文件会存放在'/data/media/adminfiles/'目录下