admin/url のアップロード方法に問題があります。
私の設定では:
# Absolute filesystem path to the directory that will hold user-uploaded files.
# Example: "/var/www/example.com/media/"
MEDIA_ROOT = os.path.join(PROJECT_PATH, "media")
# URL that handles the media served from MEDIA_ROOT. Make sure to use a
# trailing slash.
# Examples: "http://example.com/media/", "http://media.example.com/"
MEDIA_URL = '/media/'
# Absolute path to the directory static files should be collected to.
# Don't put anything in this directory yourself; store your static files
# in apps' "static/" subdirectories and in STATICFILES_DIRS.
# Example: "/var/www/example.com/static/"
STATIC_ROOT = ''
# URL prefix for static files.
# Example: "http://example.com/static/", "http://static.example.com/"
STATIC_URL = '/static/'
# Additional locations of static files
STATICFILES_DIRS = (
os.path.join(PROJECT_PATH, "static"),
)
# List of finder classes that know how to find static files in
# various locations.
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
# 'django.contrib.staticfiles.finders.DefaultStorageFinder',
)
そして、私の lms/models.py で
MEDIA_TYPES = (
('Videos', 'Videos'),
('Photos', 'Photos'),
('PDF', 'PDF'),
)
class LessonFile(models.Model):
"""
The files for every lessons
"""
lesson = models.ForeignKey(Lesson)
documents = models.FileField(upload_to='/media/uploads/lms/lessons/')
title = models.CharField(max_length=255)
media_type = models.CharField(max_length=255, choices=MEDIA_TYPES)
def __unicode__(self):
return self.lesson
私の管理者/で、ドキュメントを保存しようとすると(アップロード方法で):
「/media/uploads/lms/lessons/xxxx.pdf」へのアクセス試行が拒否されました。